在Heroku中使用tastypie管理X-HTTP-Method-Override?

时间:2013-01-25 17:48:12

标签: django heroku http-headers tastypie x-http-method-override

我正在尝试使用标头:X-HTTP-Method-Override: PATCH(如Tastypie Docs中所述,只在那里搜索X-HTTP-Method-Override),以便我可以模拟PATCH(在heroku中使用tastypie时不支持heroku。

我正在尝试这个卷曲请求

curl --dump-header - -H "Content-Type: application/json" -H "X-HTTP-Method-Override: PATCH" -H "Authorization: ApiKey admin:TheApiKey" -X POST --data '{"token": "test1234"}' http://staging.myserver.com/api/v1/devices/449/

在本地它的效果非常好,但是当我在我的heroku托管的应用程序上尝试它时,我得到:

HTTP/1.1 501 NOT IMPLEMENTED
Content-Type: text/html; charset=utf-8
Date: Fri, 25 Jan 2013 17:45:11 GMT
Server: gunicorn/0.15.0
Content-Length: 0
Connection: keep-alive

这可能是什么问题?

1 个答案:

答案 0 :(得分:1)

501错误与Heroku无关。

我相信这是您资源的设置。

有很多关于TastyPie的问题,我会参考文档中的以下一行:

“要使PATCH正常工作,您必须输入detail_allowed_methods设置。”

  

detail_allowed_methods = ['get','post','put','delete','patch']