php ajax分页从另一个域获取数据

时间:2016-10-14 09:49:55

标签: php pagination cross-domain

所以,我有一个网站从另一个网站抓取数据并相应地显示它。事情开始变慢,因为现在有很多数据和查询我已经抓住了所有结果。所以是时候实施一些分页了。

这是我的jQuery来获取数据:

jQuery(document).ready(function(){
    jQuery(document).on('click','.show_more',function(){
        var ID = jQuery(this).attr('id');
        jQuery('.show_more').hide();
        jQuery('.loding').show();
        jQuery.ajax({
            type:'POST',
            async: true,
                        crossDomain : true,
            url:'http://example.com/retailers/products.php?apikey=123456&retailer=Test',
            data:'id='+ID,
            success:function(html){
                jQuery('#show_more_main'+ID).remove();
                jQuery('.retailitems').append(html);
            }
        }); 
    });
});

通过以上我得到以下错误:

 No 'Access-Control-Allow-Origin' header is present on the requested resource.

我知道我可以使用datatype: jsonp但是我可以使用另一种选择,因为我拥有其他域名吗?有没有我可以在其他域上设置允许这个?

2 个答案:

答案 0 :(得分:0)

在根文件夹中添加.htaccess文件,以删除您从中获取数据的域上的跨源问题。

<IfModule mod_rewrite.c>
RewriteEngine On
</IfModule>
Header always set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Access-Control-Allow-Origin"
Header always set Access-Control-Allow-Methods "PUT, GET, POST, DELETE, OPTIONS"

答案 1 :(得分:0)

发现这有效,将其放在所请求文件的顶部:

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