自定义django-revproxy权限

时间:2017-01-14 13:21:03

标签: python django django-rest-framework

我正在使用django-revproxy,它将我的api的请求代理到另一个api。如何为用户分隔权限?例如,我有网址:

urls.py:

url(r'^posts(?P<path>.*)$', ProxyView.as_view(upstream='http://example.com/posts')),

对于管理员,我需要ProxyView上的所有GET / PUT / POST / PATCH / DELETE请求,我默认获得,但对于自定义用户,我需要自定义权限,例如,我只需要对ProxyView上的one_user进行GET请求,GET / PUT for second_user。我该如何实现呢?

1 个答案:

答案 0 :(得分:1)

我相信您可以覆盖视图的dispatch()方法。做你需要的检查,如果不允许用户执行给定的请求 - 返回代码为403的响应,否则继续正常流程。