我如何发送多个xmlhttprequest
How can I send multiple XMLHttpRequests
本文关键字:xmlhttprequest 何发送 更新时间:2023-09-26
我有一个关于node js和express框架的问题。
我想在我的服务器代码中做以下事情:
- 使用xmlhttprequest 1调用远程服务器
- 处理响应
- 使用xmlhttprequest 2调用远程服务器
这是我的服务器代码的简化版本:
app.js:
var express = require('express');
var routes = require('./routes');
var about = require('./routes/about');
var user = require('./routes/user');
var contact = require('./routes/contact')
var http = require('http');
var path = require('path');
var cors = require('cors');
var app = express();
....
app.get('/', routes.index); //<---currently this is handled in index.js, in function index.
index.js:
exports.index = function(req, res){
//xmlhttprequest 1 // <--- send xhr 1
//process data
//xmlhttprequest 2 // <--- send xhr 2
};
我得到消息Cant send headers after they are sent
。我阅读了快速文档,并收集到当我们试图在请求发送后修改头时发生这种情况。我还读了一些关于中间件和路由的文章。但是我看不清楚文件。
谁能指出理想的方法是什么?我可以与有相关信息的链接工作。我是一个新的表达和节点js。
编辑:更多的细节:
用户正在登录我的网站foo/.
他输入了一些细节,根据这些细节我做了第一个xmlhttprequest。
- 我处理来自API 1的数据,使用处理后的数据作为输入API 2,也是一个xmlhttprequest。
如果你想发送两个不同的XHR
请求,你需要为它定义两个不同的路由:
app.get('/XHR1', routes.xhr1);
app.get('/XHR2', routes.xhr2);
您获得Can't send headers after they are sent
的原因是因为您正在响应客户端(可能通过res.send(200)
,完整列表),然后尝试再次响应客户端。每次呼叫只能回复一次
相关文章:
- XMLHttpRequest未返回值-状态202
- XMLHttpRequest在移动设备上的chrome上不起作用
- AJAX简单错误.XMLHttpRequest无法加载http://localhost/mpl/getPage.php.
- 检查xmlhttprequest问题的消息
- 主线程上的同步XMLHttpRequest已弃用
- 如何定期发出xmlhttprequest
- javascript第三个XMLHttpRequest被拒绝.但前两个是允许的
- 上传带有XMLHttprequest的文件-多部分/表单数据中缺少边界
- 对象#<XMLHttpRequest>没有方法'完成'
- 在XMLHttpRequest之后重新初始化jQuery
- 如何将GreaseMonkey中的XMLHttpRequest延迟到目标页面加载完成
- Javascript XMLHttpRequest——只有第一个POST请求有效
- XMLHttpRequest - difference between Chrome & Firefox
- IE上的新XMLHttpRequest()出现JS Ajax未指定错误
- 非常简单的XMLHttpRequest不起作用
- 如何使用XMLHttpRequest下载文件
- XMLHttpRequest在$.ajax工作的地方给出了CORS错误
- XMLHttpRequest.open()AJAX中的参数url
- XMLHTTPRequest脚本中没有internet连接和超时
- 为什么当async标志设置为false时,xmlhttprequest中的代码可以工作,而当它设置为true时却不能工作