[解決済み] jquery $.ajaxからangular $httpへ。
2022-08-10 05:09:44
質問
私は、クロスオリジンでうまく動作するjQueryのコードのこの部分を持っています。
jQuery.ajax({
url: "http://example.appspot.com/rest/app",
type: "POST",
data: JSON.stringify({"foo":"bar"}),
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (response) {
console.log("success");
},
error: function (response) {
console.log("failed");
}
});
今、私はこれをAngular.jsのコードに変換しようとしていますが、うまくいきません。
$http({
url: "http://example.appspot.com/rest/app",
dataType: "json",
method: "POST",
data: JSON.stringify({"foo":"bar"}),
headers: {
"Content-Type": "application/json; charset=utf-8"
}
}).success(function(response){
$scope.response = response;
}).error(function(error){
$scope.error = error;
});
どんな助けでも感謝します。
どのように解決するのですか?
AngularJSの$httpの呼び出し方は、次のようになります。
$http({
url: "http://example.appspot.com/rest/app",
method: "POST",
data: {"foo":"bar"}
}).then(function successCallback(response) {
// this callback will be called asynchronously
// when the response is available
$scope.data = response.data;
}, function errorCallback(response) {
// called asynchronously if an error occurs
// or server returns response with an error status.
$scope.error = response.statusText;
});
といった具合に、ショートカットメソッドを使ってもっと簡単に書くこともできます。
$http.post("http://example.appspot.com/rest/app", {"foo":"bar"})
.then(successCallback, errorCallback);
気づくことがいくつもあります。
- AngularJSバージョンはより簡潔です(特に.post()メソッドの使用)。
- JSオブジェクトのJSON文字列への変換とヘッダの設定はAngularJSが行う(これらはカスタマイズ可能)。
-
コールバック関数の名前は
success
とerror
をそれぞれ指定します(各コールバックのパラメータにも注意してください) - angular v1.5で非推奨となりました。 -
使用する
then
関数を使用します。 -
の詳細
then
の使い方は はこちら
上記は簡単な例といくつかのポインタです。詳細はAngularJSのドキュメントを確認してください。 http://docs.angularjs.org/api/ng.$http
関連
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] jQueryでチェックボックスに "checked "を設定する
-
[解決済み] jQueryの「exists」関数はありますか?
-
[解決済み] jQueryでテーブルの行を追加する
-
[解決済み] jQueryで要素にスクロールする
-
[解決済み] jQueryを使ったAjaxリクエストの中断
-
[解決済み] jQuery Ajax呼び出し後のリダイレクトリクエストを管理する方法
-
[解決済み] jQueryを使用してCSSのdisplay noneまたはblockプロパティを変更するにはどうすればよいですか?
-
[解決済み] jQueryの複数要素の同一クリックイベント
-
[解決済み】jQueryでチェックボックスがチェックされているかどうかを確認するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Uncaught TypeError: 未定義のプロパティ 'length' を読み取れませんでした。
-
[解決済み] jQuery 複数のイベントで同じ関数を起動する
-
[解決済み] Select <a> which href ends with some string
-
[解決済み] チェックボックスのチェック/アンチェックは、jqueryを使用していますか?重複
-
[解決済み] AngularJS で $http.get リクエストにデータを渡す
-
[解決済み] jQuery UI DatePicker - 日付フォーマットの変更
-
[解決済み] Twitter Bootstrapのモーダルウィンドウを閉じないようにする
-
[解決済み] ドロップダウンのアイテムの選択値をjQueryで取得する
-
[解決済み] jQueryを使用してspanに値を設定する方法
-
[解決済み】AngularJS がクロスオリジンリソースに対して OPTIONS HTTP リクエストを実行する場合