用户登录成功后,后台程序会生成一个带签名的token返回给浏览器,当用户想要进一步操作时必须向后端提供该token,后端验证token无误后才允许进一步操作。但有个问题我一直有疑惑,网上也搜不到,大都是一笔带过,那就是后台生成的token是通过什么方式返回给前台的,cookie还是header?header能支持跨域吗?前端又是怎么把token传给后端的,url还是header?具体怎么弄的能不能说详细点,比如我用php将token加到header里:header("Authorization", $token) 为什么无效,要怎么设置?php如何接收参数Authorization的值?
谢谢!!!
后端返回 token,在 cookie,header,或者直接在返回的内容中都可以,看你喜欢哪个。
我个人比较喜欢直接在返回的内容中,请求的时候直接封装一下请求函数,每次请求的时候把 token 带上。
当然,用 cookie 或 header ,也是可以的。
哪种方法不重要,重要的是要写对了,比如楼主在 php 中设置 header 就是写错了,不太会用 php 的函数的时候,可以去官网的文档中找一下:http://php.net/manual/zh/func...
以 jQuery.js 中的 ajax为例,我写一下使用 header 时的写法:
前端:header.html
后端: header.php