我正在尝试使用 Piston 为 Django 提供 REST 支持。
我已经按照提供的文档实现了我的处理程序。
问题是我可以“读取”和“删除”我的资源,但无法“创建”或“更新”。
每次我点击相关 api 时,都会收到 400 Bad request 错误。
我通过使用以下常用代码片段扩展了 csrf 的资源类:
class CsrfExemptResource(Resource):
"""A Custom Resource that is csrf exempt"""
def __init__(self, handler, authentication=None):
super(CsrfExemptResource, self).__init__(handler, authentication)
self.csrf_exempt = getattr(self.handler, 'csrf_exempt', True)
我的类(代码片段)如下所示:
user_resource = CsrfExemptResource(User)
class User(BaseHandler):
allowed_methods = ('GET', 'POST', 'PUT', 'DELETE')
@require_extended
def create(self, request):
email = request.GET['email']
password = request.GET['password']
phoneNumber = request.GET['phoneNumber']
firstName = request.GET['firstName']
lastName = request.GET['lastName']
self.createNewUser(self, email,password,phoneNumber,firstName,lastName)
return rc.CREATED
请让我知道如何使用 POST 操作让创建方法起作用?