私のAngularJSアプリでは、以下のようにHTTP GETリクエストを送信しています。キャッシュデータを返すAngularJS HTTP GETリクエスト
MyService.HttpReq("testUrl", "GET", null);
HttpReq
方法は、サービスで定義され、以下のように実装されています。すべての
this.HttpReq = function(URL, method, payload)
{
$http({
url: URL,
method: method,
cache: false,
data: postData,
headers: {
'Content-Type': 'application/json',
}
}).success(function(response)
{
console.log("Success: "+JSON.stringify(response));
}).error(function(data, status)
{
console.error("Error");
});
}
まず、これはAngularJSでHTTPリクエストを送信する正しい方法ですか?
私が直面している問題は、キャッシュされたデータをレスポンスとして取得し、HTTPリクエストがサーバーにヒットしないことです。何が問題なの?コメントと答えを1として
UPDATE
私は以下のように私のHTTP要求コードを更新し、それでも同じ問題を取得しています。
this.HttpReq = function(URL, method, payload)
{
$http({
url: URL,
method: method,
cache: false,
data: payload,
headers: {
'Content-Type': 'application/json',
'Cache-Control' : 'no-cache'
}
}).
then(
function(response)
{
var data = response.data;
console.log("Success: "+JSON.stringify(data));
},
function(response)
{
var data = response.data || "Request failed";
var status = response.status;
console.error("Error: "+JSON.stringify(data));
}
);
}
を送信しても問題がないことを確認してください? GETかPOSTか両方か? –
私はGETとPOSTの両方を使用します – User7723337
.successと.errorは非推奨です。代わりに2つのコールバック関数を使用してください。 – gyc