spdy-http2 / node-spdy

SPDY server on Node.js
2.81k stars 196 forks source link

Client request doesn't fallback to https if server doesn't support spdy. #120

Closed andytson closed 8 years ago

andytson commented 10 years ago

I've tried using node-spdy for both client and servers, and I see that although the server appears to be able to fallback to https, the client doesn't, giving the error:

Error: No supported SPDY version

The project readme file doesn't appear to reflect this is the case, and there aren't any examples of usage outside of the Readme file.

Is this definitely the case?

Is there a reasonable way of making this work in the protocol, that node-spdy can be adapted to use?

andytson commented 10 years ago

I found https://github.com/indutny/node-spdy/blob/master/lib/spdy/client.js#L53

So this appears to be the case. Should the readme be updated to state that, as it doesn't state in its statement that it fallbacks to https that it's server only.

I may look into implementing it if like the server, its a matter of switching based on the negoitiated NPN protocol.

indutny commented 10 years ago

@andytson that would be totally awesome!

andytson commented 10 years ago

I've managed to do some of that, and got it being able to fallback to https if only handling one request at a time to the agent, but I'll need to make the agent act like a http(s) agent, with keep-alive and maxSockets etc to make it work with concurrent requests.

indutny commented 10 years ago

I think you can just embed https agent object inside spdy agent, and use it.