首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从Django视图调用带身份验证的Django Rest API

如何从Django视图调用带身份验证的Django Rest API
EN

Stack Overflow用户
提问于 2020-05-12 12:37:55
回答 1查看 307关注 0票数 0

我有一个django rest API,可以将学生列表提供给某些真正的用户。它需要从django视图中调用。目前,我在get_context_data内部使用带有令牌身份验证的请求库,如下所示:

代码语言:javascript
复制
import requests
def get_context_data(self, **kwargs):
    context = super().get_context_data(**kwargs)
    token,created = Token.objects.get_or_create(user=self.request.user)
    reverse_url = 'http://127.0.0.1:8000/api/students/'
    response = requests.get(
         reverse_url,
        headers={'Authorization': 'Token {}'.format(token)}
    )
    context['object'] = response.json()
    return context

这是正确的方法吗?谢谢

EN

回答 1

Stack Overflow用户

发布于 2020-05-13 09:02:44

正如eugene在评论中提到的那样,调用view函数而不是网络请求是一种更好的方法。

代码语言:javascript
复制
def get_context_data(self, **kwargs):
    context = super().get_context_data(**kwargs)
    response = LessonViewSet.as_view({'get': 'retrieve'})(
        request=self.request,
        pk=kwargs['pk']
    ).data
    context['object'] = response
    return context
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61743937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档