登录cookie时遇到的问题-创新互联

初次用express做服务端,遇到登录cookie设置的问题,梳理一下大概是这么一个过程:

目前创新互联已为上千多家的企业提供了网站建设、域名、虚拟主机、网站托管、服务器租用、企业网站设计、敖汉网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

前台用户名、密码提交以后,后台在数据库查找记录,找到记录返回code=0登录成功,同时后台写入cookie。

在express项目的app.js文件中写入一个中间件,用app.use()引用,表示任何一个get,post请求都要走这一步过滤一下,这个函数自带req,res,next三个参数,经过打印以后发现cookie就在header里,这样前台请求接口的时候,可以在这里判断有没有cookie,没有的话就redirect跳登录页。

由于所有接口都要走这一步,包括/login这个页面,所以出现了redirect次数过多导致页面奔溃。于是加了判断,路径url如果是login就不跳转。结果登录还不成功,然后发现登录接口是login/in,也满足url不是login的条件,结果被拦截请求跳回登录页,满地是坑啊!

由于管理后台是vue做的,单独起的服务,而express是另一个服务,开发的时候还没有打包放入express服务下,所以后台一刷页面就出现“Error: Can't set headers after they are sent.”,百度上说是由于redirect重复写了请求头部,后来发现打包以后在同一个服务下访问,就没有这样的问题,我就不再纠结了,毕竟最后发布,也是要放在一起的。

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享标题:登录cookie时遇到的问题-创新互联
分享URL:http://myzitong.com/article/ddcpij.html