这是我的代码
class termTypeResource(ModelResource):
class Meta:
queryset = TermType.objects.all()
resource_name = 'gettermtypes'
allowed_methods = ['get','post']
每当我为下面的api卷曲时
curl --dump-header - -H "Content-Type: application/json" -X POST --data {"termtype":"LONG"}' --apiURL--
它正在返回(注意:我不想为api POST添加身份验证或授权)
HTTP/1.0 401 UNAUTHORIZED
Date: Fri, 17 Oct 2014 12:05:49 GMT
Server: WSGIServer/0.1 Python/2.7.6
X-Frame-Options: SAMEORIGIN
Content-Type: text/html; charset=utf-8
答案 0 :(得分:1)
来自tastypie教程: http://django-tastypie.readthedocs.org/en/latest/tutorial.html#hooking-up-the-resource-s
但是,如果您尝试向资源发送POST / PUT / DELETE,那么 发现自己得到“401 Unauthorized”错误。为了安全起见,Tastypie 装有授权类(“你可以做什么”)的船只 ReadOnlyAuthorization。这样可以安全地在网络上公开,但是 阻止我们进行POST / PUT / DELETE。让我们启用那些:
authorization = Authorization()
但您将其指定为Authorization =
,这是错误的。
并且,如果没有身份验证,如何在教程,POST等中提及它是不安全的。