Skip to content

Commit 31daeeb

Browse files
committed
bugfix for alibaba#36, ready to release v3.7.7
1 parent a0c8862 commit 31daeeb

5 files changed

Lines changed: 18 additions & 13 deletions

File tree

CHANGELOG

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
2 Oct: AnyProxy 3.7.7:
2+
3+
* bugfix for proxy.close() ref #36
4+
15
9 Sep: AnyProxy 3.7.6:
26

37
* optimize detail panel, ref #35

lib/log.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ function printLog(content,type){
88
if(!ifPrint) return;
99

1010
var tip = content;
11-
1211
console.log(tip);
1312
}
1413

lib/webInterface.js

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,8 @@ function webInterface(config){
1818
ipAddress = config.ip,
1919
userRule = config.userRule,
2020
ruleSummary = "",
21-
customMenu = [];
21+
customMenu = [],
22+
server;
2223

2324
try{
2425
ruleSummary = userRule.summary();
@@ -111,13 +112,14 @@ function webInterface(config){
111112
//plugin from rule file
112113
if(typeof userRule._plugIntoWebinterface == "function"){
113114
userRule._plugIntoWebinterface(app,function(){
114-
app.listen(port);
115+
server = app.listen(port);
115116
});
116117
}else{
117-
app.listen(port);
118+
server = app.listen(port);
118119
}
119120

120-
self.app = app;
121+
self.app = app;
122+
self.server = server;
121123
}
122124

123125
inherits(webInterface, events.EventEmitter);

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "anyproxy",
3-
"version": "3.7.6",
3+
"version": "3.7.7",
44
"description": "A fully configurable proxy in NodeJS, which can handle HTTPS requests perfectly.",
55
"main": "proxy.js",
66
"bin": {

proxy.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,7 @@ function proxyServer(option){
6363
socketPort = option.socketPort || DEFAULT_WEBSOCKET_PORT, //port for websocket
6464
proxyConfigPort = option.webConfigPort || DEFAULT_CONFIG_PORT, //port to ui config server
6565
disableWebInterface = !!option.disableWebInterface,
66-
ifSilent = !!option.silent,
67-
webServerInstance,
68-
ws;
66+
ifSilent = !!option.silent;
6967

7068
if(ifSilent){
7169
logUtil.setPrintStatus(false);
@@ -131,8 +129,8 @@ function proxyServer(option){
131129

132130
//start web socket service
133131
function(callback){
134-
ws = new wsServer({port : socketPort});
135-
callback(null)
132+
self.ws = new wsServer({port : socketPort});
133+
callback(null);
136134
},
137135

138136
//start web interface
@@ -147,7 +145,7 @@ function proxyServer(option){
147145
ip : ip.address()
148146
};
149147

150-
webServerInstance = new webInterface(config);
148+
self.webServerInstance = new webInterface(config);
151149
}
152150
callback(null);
153151
},
@@ -189,7 +187,9 @@ function proxyServer(option){
189187

190188
self.close = function(){
191189
self.httpProxyServer && self.httpProxyServer.close();
192-
logUtil.printLog(color.green("server closed :" + proxyHost + ":" + proxyPort));
190+
self.ws && self.ws.closeAll();
191+
self.webServerInstance && self.webServerInstance.server && self.webServerInstance.server.close();
192+
logUtil.printLog("server closed :" + proxyHost + ":" + proxyPort);
193193
}
194194
}
195195

0 commit comments

Comments
 (0)