2

在 expressjs 中,我可以做到

app.use(function(req, res, next) {
    if((!req.secure) && (req.get('X-Forwarded-Proto') !== 'https')) {
        res.redirect('https://' + req.get('Host') + req.url);
        console.log('redirected http request to https');
    } else {
        next();
    }
});

将http请求重定向到https。

我如何在阅读石中做到这一点?

我尝试了以下,它不起作用。

@app.Route('/')
adlMain() {
  if (app.request.requestedUri.scheme != 'https') {
    var httpsUrl = app.request.requestedUri.replace(scheme:   'https').toString();
    app.redirect(httpsUrl);
  }
  return new File('build/web/index.html');
}
4

1 回答 1

0

您需要返回结果app.redirect

return app.redirect(httpsUrl);

这与 Express 不同,因为 Express 使用响应对象来写入标题和内容,而 Redstone 使用返回值。

于 2018-02-27T19:26:01.993 回答