Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Node.js Express无法使用https和参数或错误获取_Javascript_Node.js_Express_Https_Runtime Error - Fatal编程技术网

Javascript Node.js Express无法使用https和参数或错误获取

Javascript Node.js Express无法使用https和参数或错误获取,javascript,node.js,express,https,runtime-error,Javascript,Node.js,Express,Https,Runtime Error,我有一个简单的node.js express Web服务器,它同时在HTTP和HTTPS上运行,但在express的路由参数和HTTPS方面存在问题 对于那些不知道的人,express支持路由中的参数,如 app.get('/users/:userid',函数(请求、响应) 当此“userid”映射到request.params.userid时,类似“yoursite.com/users/123”的url request.params.userid将为123 我们的职能是 app.get('/a

我有一个简单的node.js express Web服务器,它同时在HTTP和HTTPS上运行,但在express的路由参数和HTTPS方面存在问题

对于那些不知道的人,express支持路由中的参数,如

app.get('/users/:userid',函数(请求、响应)

当此“userid”映射到request.params.userid时,类似“yoursite.com/users/123”的url request.params.userid将为123

我们的职能是 app.get('/api/v1/users/:userid',函数(请求、响应){

使用HTTP时,它可以正常工作

使用HTTPS时,不会出现错误“无法获取”

然而,没有参数的事物,例如

app.get('/api/v1/hello', function (request, response) {
两方面都很好


有什么问题吗?如果无法解决,那么我们必须删除express中所有参数的使用和漂亮的检查,然后返回到正常的查询字符串解析。

您正在创建http或https服务器吗

使用express,您需要将应用程序包装在HTTPS对象中

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

有关HTTPS的更多信息,请参阅。我已经创建了这两个版本。问题不在于node+HTTPS,而在于express+HTTPS以及它在路由中的特殊参数(如/:userid)的具体使用,这会导致失败,但仅在HTTPS中