7

我有以下资源:

class MyUserResource(resources.MongoEngineResource):

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

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

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

任何想法为什么?

编辑:

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

4

1 回答 1

16

好的,最后我发现在自定义/覆盖我的网址时,我还覆盖了调用的标准行为wrap_view。这会导致未调用dispatch哪个负责检查的auth-methods。

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

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

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

于 2012-08-06T13:51:50.067 回答