Tag: 代理

nodejs – 更改https服务器证书

我正在使用https代理,并且需要即时更改https证书。 例如: 客户请求www.google.com https服务器(代理)必须使用CommonName = www.google.com创build一个证书 https服务器必须将此证书发送给客户端 https服务器将密钥和证书作为参数,但是我不需要静态证书,我需要在每个不同的请求上更改证书。 有任何想法吗?

修改node-http-proxy提供的内容

由于我代理的Web服务的一些限制,我不得不注入一些JS代码,以便它允许iframe访问父窗口并执行一些操作。 我用node-http-proxy构build了一个很好的代理系统。 然而,我花了不可估量的时间试图修改正在发送给用户的内容(在我自己,使用和谐等),没有任何成功。 我在这里发现了一些文章甚至是一些问题,但是所有这些都已经过时了,并且不再有用了。 我想知道如果有人能给我一个关于如何做到这一点的实例,因为我无法做到这一点,也许只是在这一点上是不可能的?

节点:非法访问错误 – 使用es6代理

当我使用节点0.10.26运行代码时,使用ES6代理时出现“非法访问”错误。 节点0.11.14不会发生这种情况 任何想法,我可以尝试解决这个问题? 没有堆栈跟踪。 我有一个非常复杂的代理实现,我已经实现了以下方法: get, set, has, hasOwn, delete, keys, enumerate, getOwnPropertyNames, getPropertyNames, getOwnPropertyDescriptor, getPropertyDescriptor 是否有一个代理testing套件集,我可以扔在它,看看我是否实施了一些不正确的? 或者以其他方式查看问题的根源? 我甚至不知道如何调用我实现的一半的东西:) 任何库,我可以replace代理对象? 我想我以前看过一个,但是现在找不到。 编辑:更多细节我忘记了:这不是没有堆栈轨道,有一个从蓝鸟诺言堆栈跟踪,它以Promise$_rejectPromises开始,这使我认为错误是与这个问题有关,但我仍然不知道如何find与有问题的属性源错误。

如何使用代理启动node.js应用程序(指定代理使用而不更改JavaScript代码)

要启动Node.js应用程序,需要运行node app.js 该应用程序是从互联网上读取数据。 现在我工作在防火墙之后,目标服务器只能通过以localhost:3213运行的代理来使用 我不想更改操作系统设置,并允许所有应用程序使用代理。 如何在不改变JavaScript代码的情况下为已启动的Node.js应用程序指定代理? 节点选项(与node -h列出)不提示提示。 我如何使用http代理与node.js http.Client? 指的是改变节点的应用程序。 对于Java,我可以通过-Dparameter passing[Java]系统属性 java -Dhttp.proxyHost = 127.0.0.1 -Dhttp.proxyPort = 3213 -Dhttp.nonProxyHosts =“localhost | host.example.com”MyJavaApplication

types错误:请求path包含非转义字符 – npm&cordova

我正在尝试为Android应用程序使用Apache Cordova 。 我已经与npm安装它,但是当我input命令cordova platforms add android ,我有这个错误: npm http GET https://registry.npmjs.org/cordova-android/4.0.0 TypeError: Request path contains unescaped characters. at new ClientRequest (_http_client.js:73:11) at TunnelingAgent.exports.request (http.js:49:10) at TunnelingAgent.createSocket (C:\Users\Friend\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.js:117:25) at TunnelingAgent.createSecureSocket [as createSocket] (C:\Users\Friend\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.js:184:41) at TunnelingAgent.addRequest (C:\Users\Friend\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.js:80:8) at new ClientRequest (_http_client.js:154:16) at Object.exports.request (http.js:49:10) at Object.exports.request (https.js:136:15) at Request.start (C:\Users\Friend\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\index.js:594:30) at Request.end (C:\Users\Friend\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\index.js:1186:28) 我以为它是从代理发起,所以我设置http-proxy和https-proxy像这样: npm config […]

Grunt-connect-proxy,转发文件不起作用

我正在使用这个库来从grunt(端口9000)转发api-request到节点(端口3012)的api。 https://github.com/drewzboto/grunt-connect-proxy 它在来自服务器的响应是json时起作用。 但是当它是一个图像时它不起作用。 我试图做一个与Apache的代理,它在那里工作。 所以这一定是错误的,我的代理人在咕噜。 这是来自Apache的铬响应: 这是来自grunt服务器的chrome repsonse 响应标签是空的 这些是我正在使用的相关软件包: "grunt": "^0.4.1", "grunt-connect-proxy": "^0.2.0", 这是我的gruntfile.js中的代理 proxies: [ { context: '/api_paros', host: 'localhost', port: 3012, https: false } ], livereload: { options: { open: true, base: [ '.tmp', '<%= yeoman.app %>' ], middleware: function (connect, options) { if (!Array.isArray(options.base)) { options.base = [options.base]; } // […]

为什么在获取请求后,远程服务器响应在nodejs上不包含x-csrf-token?

我正在使用nodejs和请求插件( https://github.com/request/request )来创build代理。 路由一切正常,但我的代理服务器应该转发的其中一个服务器需要CSRF令牌。 问题是,正在发送提取请求,但服务器响应不包含x-csrf-token。 这似乎是请求插件是“swalling”这个字段。 我的意思是,这不是空的回应,不。 标题甚至不包含该字段。 我必须使用请求插件的原因。 所以切换插件是没有帮助的。 任何想法可以导致这个问题? 更新(示例代码) app.use(sIncoming, function (req, res, next) { options = { 'url': sDestination + req.url, 'ca': cas, 'jar': true,// enable cookies, 'strictSSL': true, 'headers': { accept: '*/*' } }; request(options, function (err, response, body) { if (err) onsole.error(err); else { if (typeof req.headers['x-csrf-token'] === "string") […]

使用信任代理在本地主机上自动获取IP地址

我已经启用trust proxy选项来获取远程客户端的IP地址。 当应用程序部署在远程服务器上时,我从req.ip得到正确的地址,但是当应用程序在localhost上运行时,我得到这个地址::ffff:10.0.2.2 。 它是否存在一种方法使本地主机和远程工作?

采用直接代理模式的McAfee Web Gateway后面的NodeJS(不透明)

我有一个节点应用程序位于公司代理之后 – 直接代理模式下的McAfee Web Gateway(不透明)。 我有访问用户名/密码和域进行身份validation,但不知道如何使用它们。 对于使用NTLM的其他代理,我通常可以使用cntlm,它运行良好,但在这种情况下效果不佳。 在使用“基本”身份validation的http代理背后,我也是成功的。 然而,我从来没有遇到过这种野兽,并想知道从哪里开始。 谢谢!

使用npm包http-proxy在Meteor下设置SSL

我正在尝试使用SSL-Meteorpedia来设置SSLmeteor。 我已经安装了meteorhacks:npm,并在pakcages.json文件中定义了当前版本的npm http-proxy包。 现在我已经在服务器文件夹中设置了以下meteor方法: Meteor.methods({ 'ssl': function(options) { var fs, httpProxy, proxy; httpProxy = Meteor.npmRequire('http-proxy'); proxy = httpProxy.createProxyServer(options); fs = Meteor.npmRequire('fs'); http.createServer(function(req, res) { return proxy.web(req, res, { target: "http://" + this.connection.httpHeaders.host + "3000" }); }); proxy.on('error', function(e) { if (DEV_MODE) { return console.log(e); } else { return document.body = "The request couldn't be handled"; […]