I'm setting the HTTPS server as a HTTPS proxy in OS X settings, so I'm not 
the one making the connections.

How can I make a HTTPS proxy in NodeJS?

On Tuesday, February 18, 2014 9:02:08 AM UTC+1, Fedor Indutny wrote:
>
> Then you are connecting with HTTP client to HTTPS server. 
>
> On Tue, Feb 18, 2014 at 11:16 AM, Alexandre Kirszenberg 
> <[email protected] <javascript:>> wrote: 
> > No, `secureConnection` is never fired. 
> > 
> > 
> > On Monday, February 17, 2014 9:58:02 PM UTC+1, Fedor Indutny wrote: 
> >> 
> >> Wait, are you connecting with a plain text socket to it? `connection` 
> >> event emits raw TCP socket, does `secureConnection` happen at all? 
> >> 
> >> On Mon, Feb 17, 2014 at 6:31 PM, Alexandre Kirszenberg 
> >> <[email protected]> wrote: 
> >> > var https = require('https'); 
> >> > var fs = require('fs'); 
> >> > 
> >> > var server = https.createServer({ 
> >> >   key: fs.readFileSync('private.pem'), 
> >> >   cert: fs.readFileSync('public.pem') 
> >> > }); 
> >> > 
> >> > server.on('connection', function(socket) { 
> >> >   socket.on('data', function(chunk) { 
> >> >     console.log(chunk.toString()); 
> >> >   }); 
> >> > }) 
> >> > 
> >> > server.on('connect', function() { 
> >> >   console.log('connect'); 
> >> > }); 
> >> > 
> >> > server.listen(8080); 
> >> > 
> >> > 
> >> > Despite the socket receiving the data 
> >> > 
> >> > CONNECT twitter.com:443 HTTP/1.1 
> >> > Host: twitter.com 
> >> > Proxy-Connection: keep-alive 
> >> > User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_1) 
> >> > AppleWebKit/537.36 (KHTML, like Gecko) Chrome/32.0.1700.107 
> >> > Safari/537.36 
> >> > 
> >> > 
> >> > the server will never emit the connect event. Is that a bug or a 
> >> > feature? 
> >> > 
> >> > On Friday, February 14, 2014 6:34:36 PM UTC+1, Alexandre Kirszenberg 
> >> > wrote: 
> >> >> 
> >> >> I'm trying to create a HTTPS proxy server in Node.JS v0.10.24 using 
> a 
> >> >> self-signed certificate. Here's the code I'm using: 
> >> >> 
> >> >> var https = require('https'); 
> >> >> 
> >> >> var server = https.createServer({ 
> >> >>     key: fs.readFileSync('key.pem'), 
> >> >>     cert: fs.readFileSync('cert.pem') 
> >> >> }); 
> >> >> 
> >> >> server.on('request', function(req, res) { 
> >> >>     res.end('hello'); 
> >> >> }); 
> >> >> 
> >> >> server.listen(8080); 
> >> >> 
> >> >> This server correctly boots up and is accessible via 
> >> >> https://localhost:8080. However, when I set it as a HTTPS proxy (on 
> Mac 
> >> >> OS 
> >> >> X), the server emits connection events but never emits either 
> request 
> >> >> orerror. The connection hangs indefinitely and eventually times out. 
> >> > 
> >> > -- 
> >> > -- 
> >> > Job Board: http://jobs.nodejs.org/ 
> >> > Posting guidelines: 
> >> > https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines 
> >> > You received this message because you are subscribed to the Google 
> >> > Groups "nodejs" group. 
> >> > To post to this group, send email to [email protected] 
> >> > To unsubscribe from this group, send email to 
> >> > [email protected] 
> >> > For more options, visit this group at 
> >> > http://groups.google.com/group/nodejs?hl=en?hl=en 
> >> > 
> >> > --- 
> >> > You received this message because you are subscribed to the Google 
> >> > Groups 
> >> > "nodejs" group. 
> >> > To unsubscribe from this group and stop receiving emails from it, 
> send 
> >> > an 
> >> > email to [email protected]. 
> >> > For more options, visit https://groups.google.com/groups/opt_out. 
>

-- 
-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to