2017-04-13 17 views
0

私の問題は、jsonの行の形で彼に答えを得るために、サーバーに正しい要求を送ることができないということです。
AJAX REST APIリクエスト

XMLHttpRequest cannot load URL. Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access.

+0

こんにちは、 でhttp://stackoverflow.com/questions/3595515/xmlhttprequest-error-origin-null-is-not-allowedを参照してくださいません、元のヘッダは、サーバ側を設定する必要があります許可-by-access-control-allow-origin – Rikusor

+0

まず、ajax呼び出しでデータオプションを忘れてしまいます。 2番目に対称的な障害が発生した場合、サーバー要求がどのようなものであるかを確認する必要があります。私が思うと思っているajaxと組み合わせて最も多く検索された失敗の1つです) – mtizziani

+0

フロントエンドのアプリケーションがあなたが要求しているドメインとは異なるドメインにある場合は、データがクロスドメインをどのように送信するかを指定します。 CORSについては、すべてがブラウザによって処理されます。サーバーから送信された "Access-Control-Allow-Origin"ヘッダーを削除します。 "Accept:application/json"を追加して、データをJSONとしてシリアル化する必要があることをサーバーに通知します。あなたは時間を予約し、CORSについて読むべきです。それは長期的にあなたに役立つでしょう。この[リンク](http://restlet.com/company/blog/2015/12/15/understanding-and-using-cors/)などを確認してください。 – andreim

答えて

0
var dataSet = { 
    username: 'username', 
    password: 'password', 
} 

$.ajax({ 
    type: "GET", 
    url: url, 
    dataType: 'json', 
    crossDomain: true, 
    data: dataSet, 
    // the origin header has to be set server side 
    /* 
    headers: { 
    'Access-Control-Allow-Origin': '*' 
    }, 
    */ 
    success: function(response) { 
    console.log(response); 
    } 
}); 

パラメータはデータセットとオプションデータによって割り当てられている:私は、要求を送信しようとすると

$.ajax({ 
    type: "GET", 
    url: url, 
    dataType: 'json', 
    crossDomain: true, 
    username: 'username', 
    password: 'password', 
    headers: { 
     'Access-Control-Allow-Origin': '*' 
    }, 
    success: function(response) { 
     console.log(response); 
    } 
}) 

、私はエラーを取得:
はここに私のコードです。 クライアント

関連する問題