如何识别源自JS脚本的http请求与HTML<FORM>submit事件之间的差异

How to identify difference between http request originate from JS script and HTML<FORM>submit event

本文关键字:HTML FORM 之间 事件 submit 请求 识别 何识别 http 脚本 JS      更新时间:2023-09-26

服务器可以识别http POST请求是否来自JS脚本或HTML提交事件。

就像有任何属性,浏览器添加的请求指示以在服务器端解决此问题?

get 和 post 之间的区别在于参数的传递方式。在 GET 请求中,您被限制为 URL 的大小。由于传递的参数在 ?foo=bar 中发送,并附加到 URL。它们作为后置参数发送的帖子,可以作为键值对或仅原始数据发送到服务器读取。这可能会更长。还有其他差异,例如无法从标准浏览器URL访问POST,您必须在HTTP请求中提供POST方法才能访问它。其他HTTP方法也是如此,如PATCH和DELETE和OPTIONS。

如果您

使用 get 方法,则表单发送的信息在地址栏中可见,但在 POST 方法中则不可见。当您想通过表单传输安全信息时,使用POST方法。

POST 请求

只是一种 HTTP 请求。通常,当您制作一个时,它会以一种或另一种方式附加数据。问题的答案取决于表单如何设置以编码数据,以及您在 Javascript 中作为正文传递哪些数据。可以发送看起来与表单请求相同的 JS POST 请求,但没有更多信息,我无法告诉您如何发送。

唯一的区别是:

在 HTML 中,对于 GET 方法,您可以看到在 URL 中传递的参数。参数保留在浏览器历史记录中,因为它们是 URL 的一部分。

在 JavaScript 中,使用 GET 还是 POST 都无关紧要。在这两种情况下,您都可以在控制台中签入以确定传递了哪些参数。并且不会保存历史记录。