Node / Express - 如何实现DELETE和PUT请求

时间:2014-11-09 06:06:16

标签: javascript http express http-delete http-put

我知道我可以路由到router.get('/object/:id', ...)router.post('/object/new', ...)router.delete('/object/:id', ...)router.put('/object/:id', ...),当我浏览到特定对象时,浏览器会发出一个http得到请求。我知道我可以通过表单发布信息。但是如何实现DELETEPUT方法以便我可以编辑和删除对象?如何指定路径中使用的方法?我是否必须更改路由以使其唯一(即router.get('/object/delete/:id', ...)router.get('/object/edit/:id', ...))并且只使用get方法?

1 个答案:

答案 0 :(得分:1)

在HTML form元素中,您可以使用method属性指定方法。 <form method="put">。但是,更常见的是,这些类型的RESTful API端点是使用javascript作为AJAX请求从浏览器调用的,它们可以使用所有可用的HTTP方法。这可以使用XmlHttpRequest标准API,jQuery的$.ajax或您选择的前端框架来完成。

  

我是否必须更改路线以使其独一无二

不,您可以使用不同的HTTP方法使用相同的URL路径,并且可以通过不同的回调函数处理这些路径,以使其行为不同。传统的REST URL方案对请求相同URL路径的各种HTTP方法进行大量语义使用(GET表示get,PUT表示替换等)。