96SEO 2026-08-12 03:43 25
昨天想写个最简单的待办列表。前端页面画好了后端也用 Node 搭了个接口,结果死活拿不到数据,控制台还报了个红。我盯着屏幕看了十分钟,突然反应过来我好像一直没真正搞懂 Ajax 到底是怎么回事。
这是我当时的项目结构。就俩文件夹,一个后端一个前端,简单到不能再简单了。

说出来你可能不信。我用了这么久的 axios 和 fetch,从来没亲手写过一次原生的 XMLHttpRequest。总觉得这玩意儿是上古时代的东西,没必要学。结果真到自己写的时候,连基本的执行顺序都搞不清楚。按理说,
以前我总觉得 Ajax 是个很高大上的词。后来才明白,它就是专门负责传菜的服务员。
以前的网页啊,就像那种老式餐厅。你点个菜,服务员把单子拿到后厨,你就得坐着等,啥也干不了。等菜做好了服务员端上来整个桌子都给你换一遍。这就是传统同步请求——点一下链接,整个页面刷新。
而 Ajax 呢,就是能让你点完菜后继续刷刷手机、聊聊天。它把请求交给后台处理,而前台保持不变,这就是我们现在说的 “无刷新更新页面”。也是 Web 时代能这么繁荣的根本原因。
说白了Ajax 的本质就是让 JS 可以主动发起 HTTP 请求,接下来根据返回的数据动态更新页面不用刷新整个页面。
先看后端代码。用的是 Node 内置 http 模块,只需几行就能起一个服务器。其实,
// backend/index.js
const http = require;http.createServer => {
// 使用者服务函数,每次有请求进来都会执行这里
const todos =;if {
res.end;老实说,}
if {
// 注意这一行,坑了我半小时!解决跨域问题
res.setHeader;// 解决中文乱码问题:告诉浏览器返回的是 JSON,用 utf-8 编码
res.setHeader;// 把对象转成 JSON 字符串,并格式化输出
res.end);}
}).listen => {
console.log;}),
接下来在 backend 目录下执行 node index.js 就能开启服务器。打开浏览器访问 http://localhost:3000/todos,就能看到返回的 JSON 数据。
前端这边最原始的 Ajax 实现就是用 XMLHttpRequest 对象。实际来说,我第一次看到这个名字的时候,以为它只能处理 XML。现在大家都用 JSON,这名字算是历史遗留问题了。
I wrote this code and was confused about execution order. I first printed “start”,called xpath.send。n printed “end”. I thought output would be something like:
start
start send
// 等待请求完成...
readyState:
readyState:
readyState:
end
The real output was:
start
start send
end
readyState:
readyState:
readyState:
The question?Why does “end” appear before readyState callbacks?The answer lies in JavaScript’s single-threaded nature.
PITFALL FOR BEGINNERS:
I once tried to store data returned from into a global variable and use it right after calling it – always got null/undefined. That’s because request hadn’t finished yet.
javascript
// 用 fetch 替换 XHR:
fetch .n) .n(data=>{ document.getElementById.innerHTML= data.map.join })
// 更推荐 async/await 写法:
async function getTodos{ const res=await fetch;const data=await res.json;document.getElementById.innerHTML= data.map.join } getTodos
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback