【发布时间】:2012-08-11 02:40:12
【问题描述】:
对于不是由 HTML 表单发送的请求,HTTP 是否将请求的 Content-Type 限制为 application/x-www-form-urlencoded 以进行非文件上传,或者该 MIME 类型是否“正确”/标准/语义上有意义还有其他方式吗?
例如,PHP 自动将内容解析为 $_POST,这似乎表明 x-www-form-urlencoded 是服务器期望的。另一方面,我可以使用 Ajax 在 HTTP 请求内容中发送一个 JSON 对象,并将 Content-Type 设置为 application/json。至少某些服务器技术(例如 WSGI)不会尝试解析它,而是以原始形式将其提供给脚本。
我应该在 RESTful API 中的 POST 和 PUT 请求中使用哪种 MIME 类型,以确保符合 HTTP 的所有服务器实现?我忽略了诸如 SOAP 和 JSON-RPC 之类的技术,因为它们通过 HTTP 隧道协议,而不是按预期使用 HTTP。
【问题讨论】:
标签: http post http-headers put http-request