spdy-http2 / node-spdy

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

Spdy not working with express 3 & connect #90

Closed leonpegg closed 11 years ago

leonpegg commented 11 years ago

using spdy with express 3 caused this error , fqdn = ~req.url.indexOf('://') ^ TypeError: Cannot call method 'indexOf' of undefined

remoe commented 11 years ago

Can't reproduce it. Node 0.10.12 and Express 3.3.1 works.

krzysiekbielicki commented 11 years ago

I've the same problem:

spdy@1.9.1 node_modules/spdy

ejs@0.8.4 node_modules/ejs

superagent@0.15.4 node_modules/superagent ├── methods@0.0.1 ├── qs@0.6.5 ├── cookiejar@1.3.0 ├── emitter-component@1.0.0 ├── debug@0.7.2 ├── mime@1.2.5 └── formidable@1.0.14

express@3.3.1 node_modules/express ├── methods@0.0.1 ├── fresh@0.1.0 ├── range-parser@0.0.4 ├── cookie-signature@1.0.1 ├── buffer-crc32@0.2.1 ├── cookie@0.1.0 ├── debug@0.7.2 ├── commander@0.6.1 ├── mkdirp@0.3.4 ├── send@0.1.1 (mime@1.2.9) └── connect@2.8.1 (uid2@0.0.2, pause@0.0.1, qs@0.6.5, bytes@0.2.0, cookie@0.0.5, formidable@1.0.14)

jsdom@0.7.0 node_modules/jsdom ├── cssom@0.2.5 ├── nwmatcher@1.3.1 ├── htmlparser2@3.1.4 (domelementtype@1.1.1, domutils@1.1.2, domhandler@2.0.3, readable-stream@1.0.2) ├── cssstyle@0.2.3 ├── request@2.22.0 (json-stringify-safe@4.0.0, forever-agent@0.5.0, aws-sign@0.3.0, qs@0.6.5, tunnel-agent@0.3.0, oauth-sign@0.3.0, cookie-jar@0.3.0, node-uuid@1.4.0, mime@1.2.9, http-signature@0.10.0, hawk@0.13.1, form-data@0.0.8) └── contextify@0.1.6 (bindings@1.1.1) skyman@vps:~/reciper$ node -v v0.10.12

skyman@vps:~/reciper$ node app.js

/home/skyman/reciper/node_modules/express/node_modules/connect/lib/proto.js:104 , fqdn = ~req.url.indexOf('://') ^ TypeError: Cannot call method 'indexOf' of undefined at Function.app.handle (...node_modules/express/node_modules/connect/lib/proto.js:104:23) at Server.app (...node_modules/express/node_modules/connect/lib/connect.js:65:37) at Server._init (...node_modules/spdy/lib/spdy/server.js:78:10) at new Server (...node_modules/spdy/lib/spdy/server.js:32:10) at Object.create as createServer at Object. (.../app.js:44:19) at Module._compile (module.js:456:26) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12)

Line 44: var server = spdy.createServer(app, options);

indutny commented 11 years ago

You should try calling spdy.createServer(options, app) first argument is options and second is listener callback (as for https server).