[解決済み] django-rest-framework の管理者スタイルのブラウズ可能なインターフェイスを無効にする方法は?
2022-04-21 13:24:19
質問
を使っています。 django-rest-framework . これは素晴らしい Django 管理者スタイルのブラウズ可能な自己文書化 API を提供します。しかし、誰でもそれらのページを訪れて、データを追加する (POST) ためにインタフェースを使うことができます。どうすればこれを無効にできますか?
解決方法は?
ビューでサポートされているレンダラー一覧から、ブラウズ可能な API レンダラーを削除するだけです。
一般的に
REST_FRAMEWORK = {
'DEFAULT_RENDERER_CLASSES': (
'rest_framework.renderers.JSONRenderer',
)
}
ビュー単位で
class MyView(...):
renderer_classes = [renderers.JSONRenderer]
脇 :
多くの場合、閲覧可能なAPIを無効にすることは、APIに取り組んでいる開発者にとって大きな助けとなるため、いずれにせよ、人々が選択することは残念なことだと思います。 他の方法よりも多くのパーミッションを与えることはありません。 . において、ビジネス上の理由があるのかもしれないとは思います。 一部 しかし、一般的には、これは大きな資産だと考えています。 しかし、場合によっては、非公開のAPIが公開したくないような詳細(カスタムアクションの名前など)が表示されるかもしれません。
以下もご参照ください。 以下はその答えです。 は、閲覧可能なAPIレンダラーを開発用に制限することについて、より詳しく説明しています。
関連
-
django request.data を修正する AttributeError: 属性を設定できない
-
オペレーショナルエラーです。1050 解決
-
[解決済み] Django のカスタムフィールドで User モデルを拡張する
-
[解決済み] Django で完全な/絶対的な URL (ドメイン付き) を取得するにはどうすればよいですか?
-
[解決済み] Django テンプレート内で現在の URL を取得する方法は?
-
[解決済み] Django REST Framework: ModelSerializerに追加フィールドを追加する
-
[解決済み] Django REST フレームワーク: 非モデルシリアライザー
-
[解決済み] シグナルハンドラは django プロジェクトのどこにあるべきですか?
-
[解決済み] DjangoのRest Frameworkはcsrfを削除します。
-
[解決済み] ブロック %} に上書きではなく、追加することはできますか?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
オペレーショナルエラーです。1050 解決
-
[解決済み] Django vs. Model View Controller [終了しました]。
-
[解決済み] request.GETでURLパラメータを取得する
-
[解決済み] [Solved] カスタムDjango manage.pyコマンドをテストドライバから直接呼び出すにはどうしたらいいですか?
-
[解決済み] Djangoテンプレート内でコレクションのサイズを確認するにはどうすればよいですか?
-
[解決済み] Django ManyToMany filter()
-
[解決済み] Docker-Compose使用時にDjangoデータベースのマイグレーションをどのように行うか?
-
[解決済み] Djangoのクッキー、どうすれば設定できますか?
-
[解決済み] djangoでurls.pyから直接名前付きurlパターンにリダイレクトする?
-
[解決済み] ブロック %} に上書きではなく、追加することはできますか?