我有以下资源:

class MyUserResource(resources.MongoEngineResource):

    class Meta:
        ...
        authentication = MyKeyAuthentication()
        authorization = ApiKeyAuthorization()

    def override_urls(self):
        return [...]

所有标准类型的 API 调用都通过身份验证和授权进行路由。 但是所有自定义的函数/url(在我的 override_url 中)只是忽略了 auth/auth 函数......

有什么想法吗?

编辑:

也许问题是调度员没有被调用。问题仍然是为什么会这样......以及我如何改变这种行为!

最佳答案

好的,最后我发现在自定义/覆盖我的 url 时,我也覆盖了调用 wrap_view 的标准行为。这会导致不调用负责检查 dispatch 方法的 auth

所以我只是把 auth -checks 手动放在我的每个函数中(像这样):

self.is_authenticated(request)
self.is_authorized(request)

希望这可以帮助其他绝望的美味派开发人员:)

关于django - DeliciousPie-Override_urls忽略身份验证和授权,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11827368/

10-10 08:33