javascript - 在学习 Ajax 之前我需要了解什么?

标签 javascript html ajax

<分区>

Ajax - 异步 JavaScript 和 XML

它包括什么? HTML、JavaScript、XML、jQuery?

开始学习 Ajax 的最佳方式是什么?我应该从 HTML 和 JavaScript 的基础知识开始,还是以特定语言或库为基础进行指导?

最佳答案

简而言之,Ajax 是在不离开页面的情况下使用 JavaScript 从页面与网络服务器通信的过程。

为此您需要了解的关键事项是:

  • 发出请求和处理响应所需的 JavaScript
  • 接收请求并做出响应所需的服务器端代码(除非您使用的是为您提供此功能的服务)

这方面的服务器端在很大程度上取决于您正在使用的服务器端环境,因此没有什么特别有用的可以说。通常可以说的是响应可以采取什么形式。

  • JSON是发送结构化数据的流行方法。
  • XML 是另一种发送结构化数据的方式,但最近已经失宠,因为可以说 JSON 更易于使用。
  • 使用 innerHTML 将 HTML block 放入页面很受欢迎。
  • 少量的纯文本对于简单的响应很有用。

对于客户端,常见的有以下三种方式:

  • XMLHttpRequest:支持良好且灵活。
  • fetch:XHR 的替代品,具有更好的 API,但浏览器支持更有限。
  • JSONP:一种解决因 CORS 引入而变得过时的同源策略的黑客攻击,但您可能会不时遇到它。

我在上面提到了同源策略。通常 a script isn't allowed to read data from another domain出于安全原因。 CORS standard允许您解决这个问题。

现在获取一些资源:

关于javascript - 在学习 Ajax 之前我需要了解什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3536609/

相关文章:

javascript - HTML5 音频标签即使在被删除后也拒绝停止播放?

javascript - 以 Angular 4 在路由器导出外加载页面

javascript - 如何修复 Javascript 函数参数(当我使用变量传递参数时)

javascript - flot - 是否可以重新创建选择?

javascript - Android 使用 Intent 和带有phonegap的html发布图像

ajax - jQuery .append(html) 命令附加错误

javascript - 来自 ajax 请求的 Extjs 图像/png

jquery - 使用 javascript .submit() 的 AJAX Rails 复选框

javascript - 为什么在 Nodejs 中比较两个字符串时 '===' 比逐字符比较慢

javascript - 带有 proxytable 和 websockets 的 Node http 代理