如何在Node.js中使用XHR API
How to use XHR API in Node.js?
这是我之前问题的后续内容
假设我有一些javascript
代码,它在客户端(在浏览器中)上运行良好。这段代码使用浏览器API进行了大量的XHR
调用。
现在我想在node.js
中运行这段代码。node.js
是否在浏览器中提供XHR
API?
原生Node.js不提供浏览器XHR API。但是,有一个节点模块xmlhttprequest可以执行此操作。
如果文件在服务器上,则可以使用fs.readFile或fs.readFileSync.
如果它在远程服务器上,那么您可以使用类似模块的请求来执行异步XHR类型的请求:https://www.npmjs.com/package/request.这需要对代码进行一些重写。
如果您使用xmlhttprequest节点模块,可能对客户端代码的重写最少。实现了节点的浏览器XHR API。
您实际上并不需要XHR,因为您可以使用NodeJS自带的http.request。使用它,您可以发送带有标头和正文的GET、POST和PUT请求。
这是指向文档http.request.
这就是我们对模块使用Axios
的原因。它可以在客户端或服务器端使用,而不需要任何依赖项或代码更改。
节点XMLHttpRequest
nodejs中的示例代码
const XMLHttpRequest = require("xmlhttprequest").XMLHttpRequest
/* --- */
let xhr = new XMLHttpRequest()
xhr.open( 'GET', 'https://example.com' )
xhr.onload = function() {
if ( xhr.status == 200 ) {
console.log( xhr.responseText )
} else {
console.log( `Error: ${xhr.status}` )
}
}
xhr.send()
回复
回复回调
回复承诺
replit异步/等待
相关文章:
- 如何更改bigquery API中的计费层选项
- Amazon S3 REST API大小不正确
- 客户端服务器REST API captcha实现
- 使用Facebook live API创建实时视频对象时的隐私设置
- 谷歌放置API:按国家或餐馆名称搜索餐馆
- MeteorJS:在带有回调的vzaar api上正确使用wrapAsync
- 是否可以控制获取哪些Google地图脚本(JavaScript API)
- API密钥使用和检查示例
- 谷歌地图API v3不适用于移动浏览器或PhoneGap
- 任何方式使AJAX调用Gmail API,而无需通过JS库
- 谷歌地图JS API+JSON-多个标记没有显示
- 单击超链接时,如何使用Google Maps API v3缩放地图
- 如何在 API 调用后和 if 语句中启用提交按钮
- 使用 xhr 请求 Google Place API 遇到了 CORS 问题
- React-Native 使用 XHR 将图像文件发送到 API 后端
- 如何在Node.js中使用XHR API
- 谷歌地图'道路API不适用于XHR
- Imgur API错误,如何用XHR上传
- AJAX: jQuery ajax api vs. Javascript xhr
- 链接预取可用于缓存JSON API响应,以供以后的XHR请求使用