node.js中有AJAX吗?为什么?
is AJAX available in node.js - and why
我有一个基于浏览器的javascript背景,并希望熟悉node.js。据我所知,node.js是一个基于V8引擎的框架,它提供了服务器端javascript以及一些内置模块。
我的问题是: node.js是否支持AJAX调用?为什么/怎么做?当然,node可以处理传入的AJAX请求,就像其他服务器端技术(python、ruby、php、j2ee)一样——但我想问的是,它是否可以触发 AJAX调用。JavaScript是一种事件驱动技术(本质上是异步的)。浏览器需要获取外部数据(从服务器),这就是为什么他们使用XMLHttpRequest
。由于是服务器端,node.js不必触发AJAX,因为它需要调用其他服务器。如果它需要与其他服务器通信,它可以使用普通的套接字/服务,就像其他技术(python, ruby等)一样。但是,无论如何,XMLHttpRequest是内置到浏览器中的,所以也许没有理由从node. js中删除它。也许它会在某种程度上有用。
我希望你的回答也能解释这个话题。
node.js是否支持AJAX调用?
Ajax是使用JavaScript从浏览器发出HTTP请求而不离开页面的过程。
由于Node(在WWW上下文中)通常运行在服务器上,所以它通常不这样做。
您可以:
- 使用Node运行HTTP服务器,让客户端JavaScript使用Ajax向该服务器发出请求
- 驱动浏览器(例如通过PhantomJS或Selenium),并让它加载一个页面,使浏览器执行Ajax调用
- 从节点 发出HTTP请求
由于是服务器端,node.js不需要触发AJAX,因为它需要调用其他服务器。
一个服务器与另一个服务器通信的原因有很多
如果它需要与其他服务器通信,它可以使用普通的套接字/服务,就像其他技术(python, ruby等)一样。
我不记得上次使用Python、Ruby或任何其他语言通过网络获取数据是什么时候了,而我没有使用HTTP(和预先编写的HTTP库)。
XMLHttpRequest是内置在浏览器中的,所以可能没有理由从节点
中删除它。
Node不是一个删除了位的浏览器,所以XMLHttpRequest并没有从它中删除,它从一开始就不在它里面。
Node有一个内置的HTTP模块,它可以发出HTTP请求,NPM上有几个库提供了替代api(包括一个实现XMLHttpRequest规范的库)。
它不是内置的,但有一个NPM模块:https://www.npmjs.org/package/xmlhttprequest
- 为什么 AJAX POST 请求不起作用
- 为什么AJAX调用有时会重定向页面
- 为什么 ajax 没有部分刷新我的页面
- 为什么 AJAX 完成和错误回调都触发了
- 为什么ajax要多次提交
- 为什么Ajax请求更改参数值
- 为什么Ajax没有从表中获取数据并显示它
- 为什么ajax回调在我的本地变量中设置undefined
- 为什么$.ajax没有获取数据
- 为什么 AJAX 在部分数据序列化方面失败
- 为什么 AJAX 不工作
- 为什么 Ajax 请求成功,但最终以失败回调告终
- 为什么ajax不起作用,除非我刷新或使用location.href
- 为什么 ajax 'application/json' 要运行 PHP 代码两次
- 为什么 ajax 在发送前没有逗号时不发布
- 为什么 AJAX 对第一个函数的响应“_blank”有效,但对第二个函数无效
- 为什么 AJAX 函数未被调用,并且在调用函数时未打印警报
- 为什么Ajax不遵循成功函数
- 为什么 AJAX 输出带有错误的编码
- 为什么 ajax 不会填充我的 ul 列表