伙计们,我正在django项目上部署AWS上的Elastic-Beanstalk,目前它运行良好,但是我想知道允许BrowsableAPIRenderer处理浏览器上的请求是好是坏,我试图找到与其相关的任何内容,但实际上根本没有太多的文档。我的应用程序具有非常严格的权限策略,即使我通过可浏览的API访问时,它也会返回以下内容:
{
"detail": "Authentication credentials were not provided."
}
但是,它显示有关端点的某种“信息”。在该部分中,我很难定义是否应该允许它,以便其他开发人员可以轻松地了解正在发生的事情,或者另一方面,如果这是公众可以访问的巨大风险。
答案 0 :(得分:4)
您可能会发现this question及其答案很有用。基于this answer,提供BrowsableAPIRenderer确实有助于开发:
根据您当前的设置,用户至少需要在DRF登录页面或Django ADMIN页面上登录才能查看您的API并与之交互。
您可以在开发中启用BrowsableAPI,但在生产设置following this answer中将其禁用。
在生产中,我不希望其他具有写权限的用户通过BrowsableAPI与API进行交互。它将迫使其他用户使用前端应用程序或其他安全应用程序与API进行交互。这样可以提供一个安全层,以禁止使用BrowsableAPI完成描述性操作。