用于删除请求的 Slim Framework 和 getParsedBody
Slim Framework and getParsedBody for delete request
我正在尝试获取正文中传递的参数(从表单)作为对 API 的 DELETE 请求 as
$allVars = $request->getParsedBody();
但由于某些原因,在 POST 和 PUT 请求正常工作时它将为空。
有什么建议吗?
根据 HTTP specification,服务器应忽略 DELETE
请求主体,因为没有“定义的语义”:
A payload within a DELETE request message has no defined semantics;
sending a payload body on a DELETE request might cause some existing
implementations to reject the request.
为 DELETE http 请求使用请求正文有点不寻常。许多 HTTP 客户端库不支持它,因此它迫使开发人员从低级别构造请求。另一件事,我猜想一些流行的网络服务器如果将它们用作代理,默认情况下会像 GET 一样切割 DELETE 请求的主体,因此需要对它们进行额外的配置。
我会将它们放在 URL 路径或 URL 查询参数中,例如:
DELETE /resource/1234
我正在尝试获取正文中传递的参数(从表单)作为对 API 的 DELETE 请求 as
$allVars = $request->getParsedBody();
但由于某些原因,在 POST 和 PUT 请求正常工作时它将为空。
有什么建议吗?
根据 HTTP specification,服务器应忽略 DELETE
请求主体,因为没有“定义的语义”:
A payload within a DELETE request message has no defined semantics; sending a payload body on a DELETE request might cause some existing implementations to reject the request.
为 DELETE http 请求使用请求正文有点不寻常。许多 HTTP 客户端库不支持它,因此它迫使开发人员从低级别构造请求。另一件事,我猜想一些流行的网络服务器如果将它们用作代理,默认情况下会像 GET 一样切割 DELETE 请求的主体,因此需要对它们进行额外的配置。
我会将它们放在 URL 路径或 URL 查询参数中,例如:
DELETE /resource/1234