2017-09-29 5 views
0

私はコードを変更するたびにクロスドメインの問題を解決しようとしています。それはうまくいかず、私のAjaxコードに問題があると思います。コードをチェックしてくださいいくつかのアドバイス、ありがとう。コードは、問題を解決するために役立ちます下 ajax cors unknown errors

+0

**お客様の** clientsideコードの変更は、サーバーがCORSをサポートしておらず、適切なヘッダーを送信していない場合は、まったく役に立ちません。 – adeneo

+0

CORSがあなたのサーバ側で実行されている場合は、サーバコードについて説明してください。 –

+0

'' Content-Type '': "application/json" '' POST'は 'OPTIONS'プリフライト要求を引き起こします –

答えて

0

function login(url,name,password){ 
 
\t console.log("login"); 
 
\t console.log(url); 
 
\t var tips = document.getElementById('tips'); 
 
\t $.ajax({ 
 
\t   url: url, 
 
\t \t \t type:"POST", 
 
\t   headers: { 
 
     \t \t "Content-Type": "application/json" 
 
    \t \t }, 
 
\t   data:{ 
 
\t \t \t \t "user_code" : name, 
 
\t \t \t \t "user_key" : password 
 
\t \t \t }, 
 
\t \t \t dataType: "json", 
 
    \t \t // xhrFields: { 
 
    \t \t //  withCredentials: true 
 
    \t \t // }, 
 
\t \t \t success:function(data){ 
 
\t \t \t \t if(data.token == undefined){ 
 
\t \t \t \t \t console.log(data); 
 
\t \t \t \t \t tips.innerHTML = "错误"; 
 
\t \t \t \t }else{ 
 
\t \t \t \t \t saveToken('token',data.token,1); 
 
       \t saveToken('user_id',data.user_id,1); 
 
       \t checkToken(data.token); 
 
\t \t \t \t } 
 
\t   }, 
 
\t   error: function(msg){ 
 
\t   \t console.log(msg); 
 
\t   \t console.log("fail"); 
 
\t   } 
 
\t }); 
 
}

は、追加ヘッダフィールドにサーバーの応答で、私はまた、他の言語を使用することができますjava.Youにコードの下に使用しています。

  response.setHeader("Access-Control-Allow-Origin", "*"); 
      response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE"); 
      response.setHeader("Access-Control-Max-Age", "3600"); 
      response.setHeader("Access-Control-Allow-Headers", "Content-Type,X-Requested-With,accept,Origin");