2017-01-07 14 views
0

私は、javascriptクライアントからDjango restフレームワークでapiビルドをやり直すようにリクエストしています。 /api/testへのすべてのGET要求は公開されているため、セッションやトークンなどは必要ありません。 API /テストに すべてのPOSTはプライベートであり、ユーザーはのOAuth2Djangoの残りのフレームワークとクロスオリジンのリクエスト

the documentationによると、私はdjango-core-headersでクロスオリジン・リクエストを管理する必要が使用する必要があります。私のdjangoにこのモジュールをインストールした後、私は CORS_ORIGIN_ALLOW_ALLTrueを設定しましたが、 1)それは良い習慣ですか? 2)いくつかのポイントでのみクロスオリジンのリクエストを許可する良い解決策がありますか?

おかげジャンゴ・コア・ヘッダを持つ

答えて

0

あなたはCORS_ORIGIN_WHITELISTCORS_ORIGIN_REGEX_WHITELISTでCORSの起源を制限することができます。 に任意の起点を許可するためにが必要な場合は、それらを設定します。そうでなければ、あなたは良いです。

デコレータを作成してビューの起点をチェックして、希望の起点と一致するかどうかを確認することができます。しかし、任意の起源からのGET要求を許可していて、許可されている限りPOST要求がどこから来たのか気にしないならば、あなたは明らかです。結局のところ、クライアントがどこからリクエストを行うことができるのか分かりませんか?

+0

回答ありがとうございます。残念ながら、要求は顧客のブラウザから行うことができますし、私はホワイトリストを設定することはできません:( – billyJoe

関連する問題