PUT 参数如何传递给页面?
Posted
技术标签:
【中文标题】PUT 参数如何传递给页面?【英文标题】:How are PUT parameters passed to a page? 【发布时间】:2012-09-16 17:00:24 【问题描述】:我找不到那个问题的准确答案:
PUT 发送的参数是在 URL 中传递,还是在 HTTP 标头中传递?
我认为是 HTTP 标头,但是当我使用 PUT 方法提交表单时,它会将参数附加到 URL!
【问题讨论】:
【参考方案1】:PUT 发送的参数是在 URL 中传递,还是在 HTTP 标头中传递?
不是标题。它与 POST 相同 - 请求的 URL 或正文。唯一的区别是使用的 HTTP 动词,当然还有随之而来的语义(更新服务器上的资源)。
【讨论】:
我不知道 POST 可以通过 URL 发送数据!不只是在 HTTP 请求正文中吗? --- 所以这意味着 PUT 可以将example.com?param=value OR 之类的数据发送到请求正文中? 两者都是可能的 URL 和正文。我会避免它。我只会使用身体。 好的,非常感谢!所以这意味着在我的情况下,是服务器在我点击提交按钮后自动将参数放入 URL 中? 什么提交按钮?您是在谈论带有<form>
的html 网页。大多数浏览器只支持 GET 和 POST 动词,不支持 PUT。如果要从网页中使用 PUT 动词,则必须使用 AJAX。不,向请求添加任何内容的不是服务器。是客户端。对于 HTML <form>
,这在 HTML specification 中进行了描述。如果您使用method="GET"
,则浏览器会将表单内的所有输入字段值添加到查询字符串中。如果您使用 POST,它会将它们添加到正文中。
是的,我使用<form>
进行测试。感谢您的建议!【参考方案2】:
您的问题似乎与 HTML 表单有关。在这种情况下,答案是:它们不支持 PUT(浏览器仍然发送 POST 请求)。
如果不是关于 HTML 表单:这取决于您。例如,在 XmlHttpRequest 中,您可以同时使用两者。
【讨论】:
以上是关于PUT 参数如何传递给页面?的主要内容,如果未能解决你的问题,请参考以下文章
如何在uniapp中使用uni.navigateBack()传递参数给上个页面?
如何在uniapp中使用uni.navigateBack()传递参数给上个页面?