未提供身份验证凭据。 Django Rest Framework/JWT 和 React 原生 iOS
Posted
技术标签:
【中文标题】未提供身份验证凭据。 Django Rest Framework/JWT 和 React 原生 iOS【英文标题】:Authentication credentials were not provided. Django Rest Framework/JWT and React native iOS 【发布时间】:2019-07-19 20:00:18 【问题描述】: axios.get(
url,
headers:
Authorization: "Bearer " + access_token
)
这是我当前在我的 react native 项目中发送到服务器的请求。当它在 android 上运行时,它可以正常工作。但在 iOS 上它显示 Authentication credentials were not provided
。这有什么问题。只有当我尝试随请求发送承载令牌时才会发生这种情况。否则,axios 也适用于 ios。请帮我找出问题所在。谢谢。
Django 设置部分
REST_FRAMEWORK =
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework_simplejwt.authentication.JWTAuthentication',
),
SIMPLE_JWT =
'ACCESS_TOKEN_LIFETIME': timedelta(days=1),
'REFRESH_TOKEN_LIFETIME': timedelta(days=5),
'ROTATE_REFRESH_TOKENS': True,
'BLACKLIST_AFTER_ROTATION': True
【问题讨论】:
你能发布django设置模块吗?很可能是由于 JWT 前缀设置造成的? 我更新了 django 设置部分 您好,您找到解决此错误的方法了吗?未提供身份验证凭据 @PrashantGaikwad 问题是一个斜线。 iOS 需要在帖子请求上试用斜线。然后只有它需要身份验证标头。所以我在我的网址末尾加了一个斜杠,问题就解决了。 【参考方案1】:嗨,默认的 Jwt 前缀 auth 前缀是 JWT。
Authorization: "JWT" + access_token
或者您可以从设置中更改前缀
'JWT_AUTH_HEADER_PREFIX': 'Bearer',
https://getblimp.github.io/django-rest-framework-jwt/
【讨论】:
我正在使用 djangorestframework-simplejwt==3.2.3 作为网络令牌。第二件事是,当我在 android 应用程序和 Postman 上运行相同的代码时,这个 API 可以正常工作。以上是关于未提供身份验证凭据。 Django Rest Framework/JWT 和 React 原生 iOS的主要内容,如果未能解决你的问题,请参考以下文章
Django Rest Framework JWT“未提供身份验证凭据。”
Django Rest Framework:未提供身份验证凭据
Django Rest Framework "detail":"未提供身份验证凭据。"
django-oauth-工具包; Django Rest Framework - 未提供身份验证凭据