Uncaught SyntaxError: Unexpected token :

1180 ワード

json形式エラーUncautSyntaxError:Unexpected token:
このエラーは、返された結果のフォーマットエラーによるもので、私がこのエラーを起こしたのは、jsonpとのドメイン間リクエストによるものですが、返されたjsonによるエラーです.ここでjsonpのドメイン間要求により返されるのはcallback(json)であるべきである.しかしインタフェースはjsonを返しているのでエラーです.
解決方法:
1、バックグラウンドのインタフェースを改造して、バックグラウンドにjsonpをバックグラウンドのcallbackに送るようにします.
2、yql、すなわちyahooが提供するjsonpエージェントを採用し、jsonpのドメイン間リクエストを行い、jsonを返す.
jsonp jsonデータ取得
<script type="text/javascript" src="http://www.w3dev.cn/rardownload/20130106/20130106170832648.js"></script>  
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js"></script>  
<script>  
    $.ajax({  
        url: 'http://query.yahooapis.com/v1/public/yql',  
        dataType: 'jsonp',  
        data: {  
            q: "select * from json where url=\"http://www.w3dev.cn/json.asp\"",  
            format: "json"  
        },  
        success: function (d) {  
           alert(JSON.stringify(d))//  json    query.results   
        }  
    }); 
http://query.yahooapis.com/v1/public/yqlJSONPドメイン間インタフェースAPI使用説明