日期:2014-05-16  浏览次数:20435 次

跨域访问怎么做呢,? 访问 json格式的数据, 求教,从昨天一直研究这个,也没弄出来
求教

<?php
$ary  = array('result'=>0,'message'=>'跨域成功');
$json  = json_encode($ary);

echo "$json;";

?>



   $.getJSON("http://www.s94994.com/json.php",function(d){
// alert(1)
alert(d+'....40')
});

返回状态是200,但是数据是空, 我要怎么做才能访问到 json格式的数据呢?

JSON PHP

------解决方案--------------------
用jsonp方法来访问其他域名的接口
示例:
$.ajax({
dataType: 'jsonp',
data: 'id=10',
jsonp: 'jsonp_callback',
url: 'http://www.yiwuku.com/getdata',
success: function () {
// do stuff
},
});

------解决方案--------------------
 js就是有跨域限制,你先做个中建页比如aaa.aspx ,用后台获取内容,这样就没有跨域限制了,然后再ajax请求这个aaa.aspx就可以了
附后台抓内容的例子

string strJson=GetWebContent("http://www.s94994.com/json.php",Encoding.UTF8);
 private string GetWebContent(string Url, Encoding encoding)
        {
            string strResult = "";
            try
            {
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
                //声明一个HttpWebRequest请求
                request.Timeout = 90000;
                //设置连接超时时间
                request.Headers.Set("Pragma", "no-cache");
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                Stream streamReceive = response.GetResponseStream();
                //Encoding encoding = Encoding.UTF8;

                StreamReader streamReader = new StreamReader(streamReceive, encoding);
                strResult = streamReader.ReadToEnd();
                streamReceive.Dispose();
                st