我正在尝试使用 Piston 为 Django 提供 REST 支持。我已经按照提供的文档实现了我的处理程序。问题是我可以“读取”和“删除”我的资源,但不能“创建”或“更新”。每次我点击相关的 api 时,我都会收到 400 错误请求错误。
我使用这个常用的代码片段扩展了 csrf 的 Resource 类:
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 操作让 create 方法工作?