我有一个跨越子域的jQuery ajax调用,它正常工作,除了它没有发送cookie.有没有办法实现这个目标?
解决方法
这对我来说听起来像预期的行为. Cookie是每个域(包括子域).但我认为你可以用这样的东西强制它:
$.ajax({ headers: {'Cookie' : document.cookie },url: "sub.domain.com",success: function(){ ...
这是完全未经测试的,所以让我知道它是否有效;)
编辑:实际上它看起来根本不可能……看这里:How do I SET a Cookie (header) with XMLHttpRequest in JavaScript?你可能是SOL
但它认为您可以在PHP中设置cookie,以便它们在所有子域中有效.像这样的东西:
ini_set('session.cookie_domain','.example.com')
注意’.’在域之前 – 将为example.com及其所有子域设置cookie.
您可以使用上面的内容在应用中设置session.cookie_domain,也可以在PHP.ini中设置它.
以上是从here被盗