0

AngularJS をテストするために、 http://angularjs.org/ホームページの「Wire up a Backend」の例から、次のコードを使用しました。ビューがローカルの場合、すべてが期待どおりに機能しますが、ビューを別の URL に移動すると 403 が返されます。ここで jsbin の例を参照してください。

http://jsbin.com/olavok/1/edit

オプション ... 403 (禁止) angular.min.js:99 XMLHttpRequest を読み込めません .... オリジンhttp://jsbin.comは Access-Control-Allow-Origin で許可されていません。

ただし、jQuery は問題なく動作します。同じ jsbin に jQuery ajax 呼び出しを追加すると、ログに JQUERY SUCCESS が表示されます。結果を見ると、jQuery がビューを提供していることがわかります。

Angular で素敵なクロスサイトをプレイする方法について何か考えはありますか? angular が DOM に「jQuery light」を使用していることを読みました。角度を付けてフォールバックし、ajax に jQuery を使用する方法はありますか?

4

1 に答える 1

0

設計によるものと思われます: http://docs.angularjs.org/api/ng.$http

のセクションを読んでください Cross Site Request Forgery (XSRF) Protection

403 が GET ではなく、OPTIONS 動詞から返されていることに気付きました。jQuery は単純に GET を実行するため機能しますが、Angular$httpは次のルールに従っているようです。

AngularJS はクロスオリジン リソースに対して OPTIONS HTTP リクエストを実行します

于 2013-05-10T01:06:19.847 に答える