From 61e2821fe604a133fc39fdeb0a34bfa35e825b20 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=8A=A0=E9=87=8C?= Date: Wed, 13 Aug 2014 13:27:05 +0800 Subject: [PATCH] update api --- lib/certMgr.js | 2 +- lib/httpsServerMgr.js | 16 +++++++--------- lib/requestHandler.js | 2 +- package.json | 2 +- 4 files changed, 10 insertions(+), 12 deletions(-) diff --git a/lib/certMgr.js b/lib/certMgr.js index 758e868..ae78286 100644 --- a/lib/certMgr.js +++ b/lib/certMgr.js @@ -82,7 +82,7 @@ function generateRootCA(){ process.exit(0); }); }else{ - + console.log(color.red("fail to generate root CA")); } }); } diff --git a/lib/httpsServerMgr.js b/lib/httpsServerMgr.js index 11f9fe2..f554731 100644 --- a/lib/httpsServerMgr.js +++ b/lib/httpsServerMgr.js @@ -1,5 +1,5 @@ //manage https servers -var getPort = require('./getPort'), +var getPort = require('./getPort'), async = require("async"), http = require('http'), https = require('https'), @@ -8,9 +8,7 @@ var getPort = require('./getPort'), url = require('url'), color = require('colorful'), certMgr = require("./certMgr"), - requestHandler = require("./requestHandler"), - asyncTask = require("./asyncTaskMgr"); - + asyncTask = require("./asyncTaskMgr"); var DEFAULT_RELEASE_TIME = 120*1000; @@ -29,7 +27,7 @@ module.exports =function(){ }; //fetch a port for https server with hostname - this.fetchPort = function(hostname,userCB){ + this.fetchPort = function(hostname,userRequesthandler,userCB){ var serverInfo = self.serverList[hostname], port; @@ -41,7 +39,7 @@ module.exports =function(){ //create server with corresponding CA }else{ - + asyncTaskMgr.addTask(hostname ,userCB,function(cb){ createServer(cb); }); @@ -60,7 +58,7 @@ module.exports =function(){ ,function(callback){ certMgr.getCertificate(hostname,function(err,keyContent,crtContent){ - var server = createHttpsServer(port,keyContent,crtContent); + var server = createHttpsServer(port,keyContent,crtContent,userRequesthandler); self.serverList[hostname] = { port : port, server : server, @@ -96,11 +94,11 @@ module.exports =function(){ },DEFAULT_RELEASE_TIME); } -function createHttpsServer(port,keyContent,crtContent){ +function createHttpsServer(port,keyContent,crtContent,userRequesthandler){ return https.createServer({ key : keyContent, cert: crtContent - },requestHandler.userRequestHandler).listen(port); + },userRequesthandler).listen(port); } diff --git a/lib/requestHandler.js b/lib/requestHandler.js index 67a1962..13b258b 100644 --- a/lib/requestHandler.js +++ b/lib/requestHandler.js @@ -139,7 +139,7 @@ function connectReqHandler(req, socket, head){ console.log("==>will forward to local https server"); //forward the https-request to local https server - httpsServerMgrInstance.fetchPort(hostname,function(err,port){ + httpsServerMgrInstance.fetchPort(hostname,userRequestHandler,function(err,port){ if(!err && port){ try{ var conn = net.connect(port, 'localhost', function(){ //TODO : localhost -> server diff --git a/package.json b/package.json index a8067c5..ede0c6c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "anyproxy", - "version": "0.2.2", + "version": "0.2.3", "description": "https proxy over http", "main": "proxy.js", "bin": {