2012-01-01 7 views
0

は、私は、このWebサービスへの接続を試みた:

http://www.w3schools.com/webservices/tempconvert.asmx

が、それは

に "エラー" を警告これは、私が使用したスクリプト:

 var varType; 
    var varUrl; 
    var varData; 
    var varContentType; 
    var varDataType; 
    var varProcessData; 
    function SetValue() { 
     varType = "POST"; 
     varUrl = "http://www.w3schools.com/webservices/tempconvert.asmx/FahrenheitToCelsius"; 
     varData = '{"Fahrenheit":"230"}'; 
     varContentType = "application/json; charset=utf-8"; 
     varDataType = "json"; 
     varProcessData = true; 
     CallService(); 
    } 
    function CallService() { 
     $.ajax({ 
      type: varType, 
      url: varUrl, 
      data: varData, 
      contentType: varContentType, 
      dataType: varDataType, 
      processdata: varProcessData, 
      success: function (msg) { 
       ServiceSucceeded(msg); 
      }, 
      error:function (xhr, ajaxOptions, thrownError){ 
       alert(xhr.statusText); 
       alert(thrownError); 
      } 
     }); 
    } 

    function ServiceSucceeded(result) { 
     alert("ServiceSucceeded"); 

     varType = null; varUrl = null; varData = null; varContentType = null; varDataType = null; varProcessData = null; 
    } 

どうすればよいですか?によって

+2

dataType: 'jsonp'を使用する必要が –

+0

あなたは 'null'にすべてを設定する必要はありません...ガベージコレクタはそれを処理します。 – Ryan

+0

あなたはfirebug/webinspectorで正確に戻ってきていますか?あなたはプリセット変数でコンソールから手動でこれをやろうとしましたか? – alonisser

答えて

1

あなたがクロスドメインリクエストを行うときは、[同一生成元ポリシー](http://en.wikipedia.org/wiki/Same_origin_policy)について読む必要があるためsame-origin policy

+0

tnkx私はあなたの解決策を試します –

+1

これは動作しません。 AJAXリクエストで 'dataType: 'jsonp'をたたくことはできません。 –

+0

もちろん、サーバーもこれをサポートする必要がありますが、jsonpはクロスドメインのAJAXリクエストからJSONデータを取得する唯一の方法です。 Michaは上記の本当の問題を指摘していますが、これは他のサイトからアクセスするためのURLではありません。 –

関連する問題