我正在使用superagent.js向服务器应用程序发送POST请求。请求被发送到django
视图。但是我收到了一个关于视图的GET请求。在
下面是我试图用superagent
发送请求的代码:
request.post('/nameofview')
.set('Content-type', 'application/x-www-form-urlencoded')
.set('X-CSRFToken', csrf)
.send({name: 'name'})
.end(callback)
以下是来自django
开发服务器的日志:
因此,django
projecturl dispatcher正在接收一个post请求,但随后将其作为get请求重定向到应用程序视图。我在url匹配方面没有任何问题。Execution输入视图代码,但这是一个get请求而不是post,这就是为什么我无法获取已发送的post数据。
这是我的视图代码:
^{3}$从这个post中,我发现我必须在post请求中附加一个csrftoken,当然,我按照here的描述这样做,但没有成功。在
所以,我的问题是,它为什么要这样做,我怎样才能使它不触碰我的post请求?在
p.S.它与get请求一起工作,没有任何问题。
穆尼尔似乎走上了正确的道路。但是后面的
/
似乎不是问题所在。相反,Django在请求的URL前面添加了一个/ru
。ru
可能是您在url中编码的语言的描述符吗?如果是这样,请尝试调用request.post('/ru/nameofview/')
。在另一方面,superagent似乎用
GET
请求而不是POST
来调用重定向,因此Mounir提出的allow_redirects=True
函数也可以做到这一点,尽管我不熟悉该库。在相关问题 更多 >
编程相关推荐