【发布时间】:2017-12-06 22:32:37
【问题描述】:
我尝试使用 Get 请求发送数据,目的地使用 basicauth-middleware 进行身份验证。通过浏览器和源程序进行身份验证(不发送数据)工作正常,我得到一个确认输出,说明它已连接,但问题是源程序使用 GET 和 @987654322 向目标程序发送少量数据@ 但没有收到。
Destination.js
app.use(middleware('user1', 'wordpass'));
app.use(middleware(function(username, password) {
const auth = true;
console.log("PASSWORD ACCEPTED")
return auth;
}));
app.get('/data', function (req, res){
console.log(req.query);
var x = req.query.data1
});
Origin.js
middleware = require('basicauth-middleware');
function auth(){
request.get('http://127.0.0.1:3000', {
'auth': {
'username': 'user1',
'password': 'wordpass',
'sendImmediately': false
}
});
}
function send_data(){
//Gets data
function httpget() {
var url = "http://127.0.0.1:3000/data?data1="+data['data1']+"&="+data['data2']+"&online=true";
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", url, true);
xmlHttp.send();
console.log("Sent!")
return xmlHttp.responseText;
}
auth();
httpget();
}
我尝试过的事情:
- 切换顺序,这似乎没有任何改变
- 将 sendImmediately 更改为 false。我最初的想法是它在发送任何数据之前就发送了一些东西,但事实并非如此,因为连接确认在发送请求的同时出现并且数据已经被获取
- 我看到了 2011 年的 this 帖子,尽管它似乎并不真正具有相关性,而且我的做法也有所不同,但如果我能适应我正在做的事情,那将是了不起的。
我对 node.js 和其中的大部分内容还是很陌生。如果我忘记了任何相关信息,我会确保添加它。
【问题讨论】:
标签: javascript node.js http express get