【发布时间】:2014-05-13 19:28:05
【问题描述】:
我在尝试使用 Django REST 框架发布到一个简单的测试应用程序时收到错误“CSRF cookie not set”。我已经用 Django 1.4 和 Django 1.6.2 进行了尝试。我正在使用 Django REST 框架 v 2.3.13。
我尝试过使用 @csrf_exempt 装饰器,但没有帮助。
这是一个非常简单的应用程序,无需用户注册/登录等。
知道为什么我会收到此错误吗?
更新:我已经更新了我的 urls.py,如下所示,它现在可以工作了!!
这是我的代码:
urls.py
from django.conf.urls import patterns, url
from quickstart import views
urlpatterns = patterns('',
url(r'^api_add/$', views.api_add, name='api_add'),
)
views.py
from rest_framework import status
from rest_framework.decorators import api_view
from rest_framework.response import Response
@api_view(['POST'])
def api_add(request):
return Response({"test": 'abc'})
settings.py
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'django.contrib.messages',
'django.contrib.staticfiles',
'rest_framework',
)
post.sh
curl -X POST -H "Content-Type: application/json" -d '
{
"name": "Manager",
"description": "someone who manages"
}' http://127.0.0.1:8000/api_add/
【问题讨论】:
标签: django django-rest-framework