Codigniter Cross-Origin Ajax调用未获取会话信息

时间:2016-01-11 09:40:34

标签: php jquery ajax codeigniter session

我在本地主机上进行CI 3设置以进行开发,在我的主机文件中使用示例域,在httpconf中使用通配符ServerAlias。网址加载完美,登录代码运行正常,保存会话,我可以导航登录系统。

一旦我向我的测试域的子域发送ajax请求,CI中的会话似乎就会丢失,因此无法对用户进行身份验证登录。

说我的hosts文件中的域名为:

127.0.0.1 testdomain.com
127.0.0.1 test1.testdomain.com
127.0.0.1 test2.testdomain.com

CodeIgniter配置为cookie_domain =" .testdomain.com"。

我可以在http://testdomain.com:81登录系统,但只要我通过$ .post(jQuery)向http://test1.testdomain.com或test2发送请求。它以我的验证登录代码回复说会话为空。

我有

header('Access-Control-Allow-Origin: *'); 

位于ajax正在调用的控制器顶部。

有什么想法吗?

1 个答案:

答案 0 :(得分:-1)

如果遇到跨源请求问题,您应该使用$ .jsonp()而不是使用$ .post()。