0

多分私はこれを正しく理解していないだけかもしれませんが、これは私には意味がないようです. ASP.NET WebApi を公開する MVC4 プロジェクトがあります。そのプロジェクト内で API を呼び出すことはうまく機能しますが、(別のポートで) 別の実行中のプロジェクトから API を呼び出すには、明らかにクロスサイト スクリプティングが必要です。

しかし、ここで私の質問があります。これは API の目的に反しませんか? 自分のサイトから reddit API を呼び出したい場合、これがクロスサイト スクリプティングと見なされているという事実は、悪いセキュリティ プラクティスであるだけでなく、場合によってはそれを不可能にします。

これを行うために XSS が必要な場合、AJAX は全体としてかなり役に立たないのではないでしょうか?

4

2 に答える 2

1

簡単な答え:もちろん違います!! 現代の Web のほぼ全体が AJAX に基づいて構築されています。もしそれが無意味であったとしたら、MS 独自の API から Web 2.0 のバックボーンになることは決してなかったでしょう。

複雑な回答:まず、XSSは攻撃/脆弱性の一種であり、要求の形式ではありません。あなたが言及しているのは、セキュリティ上の理由から、AJAX リクエストを同じドメインに制限するsame-origin policyです。

JSONPは通常、サードパーティ API への非同期リクエストを行うために使用されます。通常、独自のAPI は Web サイトと同じドメインに配置されるため、問題は発生しません。API を別のドメインに配置する必要がある場合は、CORSを確認するか、透過的な リバースプロキシを設定して、リクエストを別のサーバーに転送することができます。

うまくいけば、これがすべて理にかなっています。少なくとも、構築するための優れた知識の基盤が得られるでしょう.

于 2013-01-18T14:24:36.527 に答える