0

データを Tastypie API に POST しようとすると、認証と承認に Django 管理者アカウントを使用している場合でも、常にエラー コード 401 が表示されます。私のDjangoサーバーは、「python manage.py runserver IP」を介して開発サーバーとして実行されています

私はtastypieとDjango 1.4.3の最新のマスターブランチを使用しています

ここに私のapi.pyの一部があります

class QueueResource(ModelResource):
    class Meta:
        queryset = Queue.objects.all()
        resource_name = 'queue'
        ]

私のカールコマンド:

curl --dump-header  -H "Content-Type: application/json" -X POST --data '{"qid": "4", "msg": "An error occured!"}' http://IP/api/fail/

対応するエラー メッセージ:

HTTP/1.0 401 UNAUTHORIZED
Date: Wed, 13 Feb 2013 19:16:00 GMT
Server: WSGIServer/0.1 Python/2.7.3
X-Frame-Options: SAMEORIGIN
Content-Type: text/html; charset=utf-8

このエラー コードが表示される理由がわかる方はいらっしゃいますか?

4

2 に答える 2

2

リソースのメタ クラスで使用する承認を定義する必要があります。

デフォルトは ReadOnlyAuthorization です。ここで
見つけることができる詳細情報

于 2013-02-22T07:17:08.010 に答える
0

UnLiMiTeD が言ったように、Authorizationを定義する必要があります。

from tastypie.authorization import Authorization
class QueueResource(ModelResource):
    class Meta:
        authorization = Authorization()
        queryset = Queue.objects.all()
        resource_name = 'queue'

これにより、QueueResource認可制限がなくなります。資格情報を確認せずに投稿できます。

デフォルトの認証方法はReadOnlyAuthorization.

于 2016-07-29T21:33:00.423 に答える