【问题标题】:How does ajax form submission work?ajax 表单提交是如何工作的?
【发布时间】:2013-05-29 05:23:54
【问题描述】:

我知道如何使用 ajax 提交表单等等。我担心的是,当通过 ajax 提交表单时,后台实际发生了什么。

价值是如何转移的?加密与否?什么是 需要指定提交类型,我的意思是获取或发布,如果 URL 是 不显示表单域?

编辑:在w3schools找到这个:

  • GET 请求可以被缓存

  • GET 请求保留在浏览器历史记录中

  • GET 请求可以添加书签

  • 在处理敏感数据时绝不应使用 GET 请求

  • GET 请求有长度限制

  • GET 请求只能用于检索数据

  • POST 请求永远不会被缓存

  • POST 请求不会保留在浏览器历史记录中
  • 无法为 POST 请求添加书签
  • POST 请求对数据长度没有限制

这些如何应用于 ajax 表单提交?

【问题讨论】:

  • 你为什么没有做任何研究?
  • 请求就像一个“正常”的 HTTP 请求一样。 GET 和 POST 之间的区别不仅仅是字段是否显示在 URL 中。
  • 今天Google.com 不适合你吗?

标签: ajax jquery ajax-forms


【解决方案1】:

基本上,当您通过 Ajax 提交表单时,它所做的事情与您作为用户 GET 或 POST 提交表单时所发生的事情完全相同 - 除了它是由浏览器在异步线程中完成的 - 即调用XMLHttpRequest。

如果您将表单作为 GET 请求提交,所有表单值将作为参数字符串拼接在一起并附加到 URL(表单的 ACTION URL) - 以 ? 为前缀。这意味着任何可以拦截该通信的人都可以读取提交的表单数据,即使请求被发送到 HTTPS URL。 POST 方法将表单数据作为单独的块(来自 URL)发送,如果 URL 是 HTTPS,则表单数据会被加密。

您似乎刚刚开始涉足 Web 开发领域 - 欢迎来到编程领域。我建议阅读一些好的 Web 开发/编程书籍(我不想在这里宣传任何特定的书籍)。亚马逊可能会帮助在“Web 开发”类搜索词下推荐一些好的搜索词。

另外,我建议您通过谷歌搜索阅读一些关于 GET 与 POST 的内容(我只能包含一两个链接 - 谷歌会显示数百个链接)。

【讨论】:

  • 从问题来看,我不认为OP是新的to the world of programming
  • @ØHankyPankyØ - 也许我也不应该!我试图礼貌地说他应该阅读一些像 GET 与 POST 这样基本的东西。如果问题仅限于 Ajax,我不会假设“新”部分。哦,好吧...
  • @smallworld:If you submit form as a GET request, all of the form values are stitched together as parameter strings and appended to the URL (form's ACTION URL) - prefixed by a ?. This means anyone who can intercept that communication can read the submitted form data even if request is sent to a HTTPS URL。当它是一个 ajax get 请求时会发生什么?
  • @Aparan 正如我在答案的第一段中提到的......“完全相同”。您的 GET 请求 Ajaxified 与否没有区别。通过 HTTP GET 与 POST 发送 - 您唯一需要担心的是正在发送的数据的大小(请参阅其他答案)。
  • 好的,我认为这已经达到了课堂培训的目的。您可能无法在浏览器中找到提交请求的 URL,但这不是黑客窃取数据的方式。无论您在浏览器 URL 中看到什么,当数据通过 Internet 发送时都可以读取 - 这不是您可以了解此类详细信息的平台。对不起,但我将无法在这个问题上提供帮助。祝你好运。
【解决方案2】:

为了清楚了解和幕后的事情,请参考下面给出的链接。

http://www.jabet.com/

How does AJAX work?

其实ajax请求和服务器端的普通请求是一样的。

  1. GET 或 POST 有自己的用例。例如:GET 有一个数据传输限制,具体取决于浏览器,从 1KB 到 10KB。 POST 没有这样的限制。

  2. 对于服务器,AJAX 和普通请求都是相同的。所以这取决于您希望支持哪种方法的服务器代码。

  3. ajax 请求未加密。

http://www.w3schools.com/tags/ref_httpmethods.asp

【讨论】:

  • @Aparan 阅读常规表单提交。与 Ajax 完全一样。
  • Anand Shah,通过 HTTP 的 AJAX 请求未加密 - 通过 HTTPS 的请求应该加密。在引用 w3schools 的任何内容之前,您可能需要查看 w3fools.com - 下次找到更可靠的来源 - w3schools 已经设法与 google 博弈 - 确保我们不会上当。
【解决方案3】:

您似乎想要一个非常详细的答案,以便您自己找到:

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-20
    • 2017-09-03
    • 1970-01-01
    • 1970-01-01
    • 2013-10-28
    • 1970-01-01
    • 2021-04-05
    • 1970-01-01
    相关资源
    最近更新 更多