javascript - 代理认证和 Node 请求

标签 javascript node.js node-webkit node-request proxy-authentication

我正在尝试使用 request 通过 https 向站点发送 get 请求。然而,我位于代理后面,需要身份验证才能使用。当我尝试添加身份验证时,它无法连接到该站点。

我尝试在代理 URL 中添加身份验证,例如:

var proxyUrl = "http://" + 'user' + ":" + 'password' + "@" + 'url:8080';
var request = require('request').defaults({proxy: proxyUrl});

我还尝试将授权添加到 header ,但这也有同样的问题

headers: {
            'Proxy-Authorization': new Buffer('user:password').toString('base64')
}
<小时/>

代理似乎正在返回身份验证响应,但是请求 dosent 似乎在那之后发送了任何内容,因此它实际上并未登录。我还需要添加一些配置吗?

最佳答案

原来我们使用的代理正在使用 NTLM 身份验证。因此,为了进行身份验证,我必须使用 NTLM 协议(protocol)而不是 Basic 协议(protocol)。我将考虑使用 Proxing-agent进行此身份验证。或者如robertklep所述有一些选项可以使用 NTLM 直接与服务器进行身份验证。

设法使用NTLM.js来实现这一点来自 Node 代理代理和 request使用protocol的以下描述.

关于javascript - 代理认证和 Node 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33277972/

相关文章:

javascript - Promise 的脚本执行顺序

c# - 在进入另一页之前等待 DIV 停止移动

javascript - Ng-repeat 不会卡住超过 12k 条记录的 UI

javascript - 如何提前打破 promise 链以在 Express 中发送错误?

javascript - `npm install npm` 给出 gyp ERR 和 npm ERR

javascript - 在 NW.js 应用程序中设置 HTML5 文件 API 的配额

asp.net - 我的 asp.net dll 或页面是否会受到我电脑中的病毒的影响

javascript - 由不再存在的框架创建的 xml 文档上的 IE9 "permission denied"

javascript - node-webkit <object> onmousedown

node.js - 使用 require grunt 找不到模块 'coffee-script'