使用Django REST框架的PUT、GET、POST和DELETE方法

3
我正在使用Django Rest Framework,我使用POST和GET方法并且它们运行良好,但是我不知道如何使用PUT和DELETE方法,我应该在HTML表单中使用method='PUT'吗?但我读到浏览器将其归为GET方法,我需要在我的代码中编写函数来处理PUT和DELETE方法吗?
- 我阅读了许多关于REST和RESTful的文章,但我不明白它们之间的区别。有些人说它们是相同的,而其他人则不这样认为,但没有澄清。当我使用POST和GET方法时,我可以说它是RESTful的吗?
谢谢。

你根本不会从表单中使用REST方法。如果你只是想要表单,那就使用标准的Django表单框架。 - Daniel Roseman
1个回答

1
除非最近有新的进展,HTML表单不支持PUT和DELETE方法。(GET、POST、PUT和DELETE方法属于HTTP,而不是HTML,在这个问题中了解更多
但是,您可以使用HTTP客户端发送PUT和DELETE请求,例如Python有一个名为requests的库,您可以使用它来发送请求。或者如果您想从前端(例如从浏览器)进行操作,则可以使用能够发送HTTP请求的JavaScript库(或现代浏览器附带的更近期的fetch(),或适用于旧浏览器的polyfill
例如:
>>> import requests
>>> req = requests.request('PUT', 'http://yourapi/resource')
<Response [200]>

至于问题的第二部分,我不确定如何归因并指向解释不同“RESTfulness级别”的文章,所以在这里给出链接:http://martinfowler.com/articles/richardsonMaturityModel.html - bakkal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接