加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Express的HTTP重定向到HTTPS的方法

发布时间:2020-12-16 08:16:18 所属栏目:百科 来源:网络整理
导读:我本地测试时,HTTP使用3000端口,HTTPS使用443. 同时监听HTTP和HTTPS 参考上一篇文章 转发所有GET请求 { let host = req.headers.host; host = host.replace(/:d+$/,''); // Remove port number res.redirect(`https://${host}${req.path}`);}); 相当于自己

我本地测试时,HTTP使用3000端口,HTTPS使用443.

同时监听HTTP和HTTPS

参考上一篇文章

转发所有GET请求

{ let host = req.headers.host; host = host.replace(/:d+$/,''); // Remove port number res.redirect(`https://${host}${req.path}`); });

相当于自己拼接上https的链接然后redirect. 此时浏览器会收到302 (MOVED_TEMPORARILY)状态码,并重定向到HTTPS.

转发所有请求

注意这里面有两个修改:

  1. httpApp.get 改成了 httpApp.all
  2. redirect时加上了第一个参数307 (TEMPORARY_REDIRECT)

只加上第一个修改的话,重定向的时候不会保留Method,导致POST请求变成了GET请求. 加上第二个修改就好了.

参考:

How do I redirect all unmatched urls with Express? Node.js with Express: how to redirect a POST request

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读