mirror of
https://github.com/node-red/node-red.git
synced 2023-10-10 13:36:53 +02:00
mqtt & httprequest: change proxy comparison from null to falsy.
mqtt - add no_proxy support.
This commit is contained in:
parent
6f91786f4d
commit
0b3e9bf5e2
@ -111,9 +111,13 @@ module.exports = function(RED) {
|
|||||||
if (typeof this.cleansession === 'undefined') {
|
if (typeof this.cleansession === 'undefined') {
|
||||||
this.cleansession = true;
|
this.cleansession = true;
|
||||||
}
|
}
|
||||||
var prox;
|
|
||||||
if (process.env.http_proxy != null) { prox = process.env.http_proxy; }
|
var prox, noprox;
|
||||||
if (process.env.HTTP_PROXY != null) { prox = process.env.HTTP_PROXY; }
|
if (process.env.http_proxy) { prox = process.env.http_proxy; }
|
||||||
|
if (process.env.HTTP_PROXY) { prox = process.env.HTTP_PROXY; }
|
||||||
|
if (process.env.no_proxy) { noprox = process.env.no_proxy.split(","); }
|
||||||
|
if (process.env.NO_PROXY) { noprox = process.env.NO_PROXY.split(","); }
|
||||||
|
|
||||||
|
|
||||||
// Create the URL to pass in to the MQTT.js library
|
// Create the URL to pass in to the MQTT.js library
|
||||||
if (this.brokerurl === "") {
|
if (this.brokerurl === "") {
|
||||||
@ -121,9 +125,15 @@ module.exports = function(RED) {
|
|||||||
if (this.broker.indexOf("://") > -1) {
|
if (this.broker.indexOf("://") > -1) {
|
||||||
this.brokerurl = this.broker;
|
this.brokerurl = this.broker;
|
||||||
// Only for ws or wss, check if proxy env var for additional configuration
|
// Only for ws or wss, check if proxy env var for additional configuration
|
||||||
if (this.brokerurl.indexOf("wss://") > -1 || this.brokerurl.indexOf("ws://") > -1 )
|
if (this.brokerurl.indexOf("wss://") > -1 || this.brokerurl.indexOf("ws://") > -1 ) {
|
||||||
// check if proxy is set in env
|
// check if proxy is set in env
|
||||||
if (prox) {
|
var noproxy;
|
||||||
|
if (noprox) {
|
||||||
|
for (var i in noprox) {
|
||||||
|
if (this.brokerurl.indexOf(noprox[i].trim()) !== -1) { noproxy=true; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (prox && !noproxy) {
|
||||||
var parsedUrl = url.parse(this.brokerurl);
|
var parsedUrl = url.parse(this.brokerurl);
|
||||||
var proxyOpts = url.parse(prox);
|
var proxyOpts = url.parse(prox);
|
||||||
// true for wss
|
// true for wss
|
||||||
@ -134,6 +144,7 @@ module.exports = function(RED) {
|
|||||||
agent: agent
|
agent: agent
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
// construct the std mqtt:// url
|
// construct the std mqtt:// url
|
||||||
if (this.usetls) {
|
if (this.usetls) {
|
||||||
|
@ -39,10 +39,10 @@ module.exports = function(RED) {
|
|||||||
else { this.reqTimeout = 120000; }
|
else { this.reqTimeout = 120000; }
|
||||||
|
|
||||||
var prox, noprox;
|
var prox, noprox;
|
||||||
if (process.env.http_proxy != null) { prox = process.env.http_proxy; }
|
if (process.env.http_proxy) { prox = process.env.http_proxy; }
|
||||||
if (process.env.HTTP_PROXY != null) { prox = process.env.HTTP_PROXY; }
|
if (process.env.HTTP_PROXY) { prox = process.env.HTTP_PROXY; }
|
||||||
if (process.env.no_proxy != null) { noprox = process.env.no_proxy.split(","); }
|
if (process.env.no_proxy) { noprox = process.env.no_proxy.split(","); }
|
||||||
if (process.env.NO_PROXY != null) { noprox = process.env.NO_PROXY.split(","); }
|
if (process.env.NO_PROXY) { noprox = process.env.NO_PROXY.split(","); }
|
||||||
|
|
||||||
var proxyConfig = null;
|
var proxyConfig = null;
|
||||||
if (n.proxy) {
|
if (n.proxy) {
|
||||||
|
Loading…
Reference in New Issue
Block a user