我有以下问题:
在一个页面上,我使用php显示一些文章,并从数据库中抓取它们。文章有两种显示类型:每日和每小时。显示类型存储在cookie中。
问题是,每当我加载额外的文章使用无限滚动和ajax的cookie不采取。如果我回显它们,我将收到一个空字符串。当从小时视图切换到日视图时,也会出现同样的问题。
为添加额外的post,我使用jquery post和加载不同的显示视图,我使用jquery.load()
我知道有一个跨源策略,但我通过添加htaccess
修复了它Header add Access-Control-Allow-Origin "*"
Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type"
Header add Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"
编辑:我还在另一台服务器上安装了这个网站,它可以正常工作。我注意到,在好的服务器上,ajax请求也发送"设置"cookie。在坏服务器上,只发送"PHPSESSID" cookie
看来问题出在WWW上请求是从www.mydomain.com发送到mydomain.com的我通过在url
中添加完整路径来修复它。$.ajax({
url: "www.mydomain.com/ajax.php",
success: function() ...
});
或
SITE_URL = "http://www.mydomain.com";
$('#wrapper').load(SITE_URL 'index.php?lang='+langSite+' #wrapper', function(data){ ...