5 参数 AJAX 请求 node.js

5-parameter AJAX request node.js

XMLHttpRequest 构造函数有一个 five-argument 版本,需要用户名和密码(我相信 jQuery 的 $.ajax 在后台使用它)。我一辈子都无法从 Joyent 文档中弄清楚,所以,记录请求 object 的每个角落和缝隙,以及 Necronomicon 如何在 Node 的 http 模块(或在它上面的任何中间件层中)。

大多数节点身份验证似乎都是基于使用 auth header 或 third-party 插件(例如 google、facebook)。这很好,但我仍然很好奇是否可以在 Node 中访问来自 5 参数 xhr 请求的用户名和密码。

我认为它不可用。为了测试,我 运行 一个最小的 node.js 服务器:

var http = require('http')
var server = http.createServer(function(req, res){
  console.dir(req, { depth:10 })
})
server.listen({port:5000})

然后像这样发出一个 XHR 请求:

var xhr = new XMLHttpRequest()
xhr.open('GET', 'http://localhost:5000', true, 'mike', 'pass')
xhr.send()

输出大量信息 (found here),none 其中包含 mikepass 用户名和密码。

如果我像这样使用 curl 发出请求,情况也是如此: curl mike:pass@localhost:5000