feature: windows系统下,开启代理时根据配置同时设置环境变量 `HTTP_PROXY`
parent
8088dca251
commit
6612f4d650
|
@ -22,7 +22,7 @@ async function _winUnsetProxy (exec, setEnv) {
|
||||||
await execFile(proxyPath, ['set', '1'])
|
await execFile(proxyPath, ['set', '1'])
|
||||||
|
|
||||||
try {
|
try {
|
||||||
await exec('echo \'test\'')
|
await exec('echo \'删除环境变量 HTTPS_PROXY、HTTP_PROXY\'')
|
||||||
const regKey = new Registry({ // new operator is optional
|
const regKey = new Registry({ // new operator is optional
|
||||||
hive: Registry.HKCU, // open registry hive HKEY_CURRENT_USER
|
hive: Registry.HKCU, // open registry hive HKEY_CURRENT_USER
|
||||||
key: '\\Environment' // key containing autostart programs
|
key: '\\Environment' // key containing autostart programs
|
||||||
|
@ -30,13 +30,20 @@ async function _winUnsetProxy (exec, setEnv) {
|
||||||
regKey.get('HTTPS_PROXY', (err) => {
|
regKey.get('HTTPS_PROXY', (err) => {
|
||||||
if (!err) {
|
if (!err) {
|
||||||
regKey.remove('HTTPS_PROXY', async (err) => {
|
regKey.remove('HTTPS_PROXY', async (err) => {
|
||||||
log.warn('删除环境变量https_proxy失败:', err)
|
log.warn('删除环境变量 HTTPS_PROXY 失败:', err)
|
||||||
await exec('setx DS_REFRESH "1"')
|
await exec('setx DS_REFRESH "1"')
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
regKey.get('HTTP_PROXY', (err) => {
|
||||||
|
if (!err) {
|
||||||
|
regKey.remove('HTTP_PROXY', async (err) => {
|
||||||
|
log.warn('删除环境变量 HTTP_PROXY 失败:', err)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
log.error('关闭系统代理失败:', e)
|
log.error('删除环境变量 HTTPS_PROXY、HTTP_PROXY 失败:', e)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -65,14 +72,19 @@ async function _winSetProxy (exec, ip, port, setEnv) {
|
||||||
await execFile(proxyPath, [execFun, proxyAddr, excludeIpStr])
|
await execFile(proxyPath, [execFun, proxyAddr, excludeIpStr])
|
||||||
|
|
||||||
if (setEnv) {
|
if (setEnv) {
|
||||||
log.info('同时设置 https_proxy')
|
log.info(`开启系统代理的同时设置环境变量:HTTPS_PROXY = "http://${ip}:${port}/"`)
|
||||||
|
if (config.get().proxy.proxyHttp) {
|
||||||
|
log.info(`开启系统代理的同时设置环境变量:HTTP_PROXY = "http://${ip}:${port}/"`)
|
||||||
|
}
|
||||||
try {
|
try {
|
||||||
await exec('echo \'test\'')
|
await exec('echo \'设置环境变量 HTTPS_PROXY、HTTP_PROXY\'')
|
||||||
await exec('echo \'test\'')
|
|
||||||
await exec(`setx HTTPS_PROXY "http://${ip}:${port}/"`)
|
await exec(`setx HTTPS_PROXY "http://${ip}:${port}/"`)
|
||||||
|
if (config.get().proxy.proxyHttp) {
|
||||||
|
await exec(`setx HTTP_PROXY "http://${ip}:${port}/"`)
|
||||||
|
}
|
||||||
// await addClearScriptIni()
|
// await addClearScriptIni()
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
log.error(e)
|
log.error('设置环境变量 HTTPS_PROXY、HTTP_PROXY 失败:', e)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue