2014-04-17 56 views
0

我有一个简单的node.js express webserver,它既可以在HTTP和HTTPS上运行,也可以在express的路由参数和HTTPS方面发生问题。Node.js Express无法通过https和参数或错误获取

对于那些不知道,快速支持像

app.get(路由参数 '/用户/:用户ID',函数(请求,响应)

当这个 '用户ID'被映射到request.params.userid让喜欢 “yoursite.com/users/123” request.params.userid的URL将是123

我们的功能是 app.get('/ API/V1 /用户/:userid',功能(请求,响应){

当使用HTTP它工作正常

在使用HTTPS不与错误“无法获取” ..

然而事情没有如PARAMS

app.get('/api/v1/hello', function (request, response) { 

在两者中均正常工作。

任何想法可能是错误的?如果无法解决,我们将不得不删除所有使用params和内置于express的漂亮检查,并返回到正常的查询字符串解析。

回答

0

你是在创建一个http还是https服务器?

有了表达,你将需要包装的应用在HTTPS对象

var https = require('https'); 
var server = https.createServer(options, app).listen(8000); 

http://nodejs.org/api/https.html更多的信息对HTTPS

+0

我已经创建了两个。问题不在于node + https,它与express + https以及它在路由中特殊使用的特殊参数(如/:userid)导致它失败,但仅在https – TroyWorks