我在这个愚蠢的小问题上浪费了一整天!
我django-rest-framework
在前端使用我的api和backbone.js。
添加选项时,我无法向服务器发出任何请求contentType
。
这是我正在尝试做的一个简单示例:
$.ajax
url:"http://127.0.0.1:8080/foo/"
type:"POST"
data: '{"e":"e"}'
contentType: "application/json"
OPTIONS 失败并且 POST 永远不会发送。
选项请求标头:
Access-Control-Request-Headers:accept, origin, content-type
Access-Control-Request-Method:POST
Origin:http://localhost:8000
现在我不知道为什么 OPTIONS 会失败。我用的是django的corsheaders app,设置如下:
CORS_ORIGIN_ALLOW_ALL = True
CORS_ALLOW_HEADERS = (
'x-requested-with',
'content-type',
'accept',
'origin',
'authorization'
)