php ,CI框架,解决跨域后,访问接口session不一致

接口代码:

 function test(){
        print (session_id());
    }

ci框架,获取sessionID,跨域后,每次访问,session不一致

https://img.mukewang.com/5c8f6a850001c1bf07580092.jpg

https://img4.mukewang.com/5c8f6a870001dc2d07160094.jpg

php头部:

header('Access-Control-Allow-Origin: http://localhost:9000');//主要就是这句!!!不加就可以了,但是无法跨域
header("Access-Control-Allow-Credentials","true");
header("Access-Control-Allow-Origin", "Origin");
湖上湖
浏览 744回答 1
1回答

Smart猫小萌

跨域如果配置得当是不影响 session 的,通常 session 的唯一凭证是通过 cookie 存储的,如果出现 session 总是变化那是因为 cookie 的原因啦,所以跨域需要允许携带身份验证信息,也就是配置: header("Access-Control-Allow-Credentials","true"); header("Access-Control-Allow-Credentials: true"); 上面是后端的配置,当然前端也需要配置下: withCredentials。 至于你说的 Access-Control-Allow-Origin 参数,这个是用来控制跨域的访问域名的,与 session 没有关系的。 Access-Control-Allow-Origin 只能配置一次,否则后面的会覆盖前面的。
打开App,查看更多内容
随时随地看视频慕课网APP