【问题标题】:Dynamic HTTP Header in react Nativereact Native 中的动态 HTTP 标头
【发布时间】:2018-12-17 22:49:30
【问题描述】:

我正在开发一个带有本机反应的应用程序。在应用程序中,出于安全原因,我们使用不记名令牌来调用 API。我已经设法使用静态标题内容调用 API。但是,我正在努力寻找一种方法来动态更新标题“授权”。我创建了一个实用程序类并从那里获取标题值。但我不明白如何动态设置授权密钥。我创建了以下方法:

Utility.headers = function() {
  return {
  "content-type": "application/x-www-form-urlencoded",
  "accept": "application/json",
  "api-token": "XXXXXXXXXXXXXXXXXXXXXXXXXX",
  "Authorization": "Bearer XXXXXXXXXXXXXXXXXXXXX"
  }
}

此方法将返回 API 标头。但我的授权值是动态的。而且我不知道如何使它动态化。请帮我解决一下这个。我是反应原生的新手

提前致谢。

【问题讨论】:

    标签: api react-native dynamic http-headers react-native-ios


    【解决方案1】:

    使用 AsyncStorage 存储您的授权标头。

    await AsyncStorage.setItem('bearer', '...');
    

    然后进入你的函数。

    像这样:

        Utility.headers = async function () {
        const jwt = await AsyncStorage.getItem('bearer');
    
        return {
            "content-type": "application/x-www-form-urlencoded",
            "accept": "application/json",
            "api-token": "XXXXXXXXXXXXXXXXXXXXXXXXXX",
            "Authorization": "Bearer " + jwt
        }
    }
    

    您可以在此处阅读有关 AsyncStorage 的更多信息:https://facebook.github.io/react-native/docs/asyncstorage.html

    【讨论】:

    • 感谢@animaonline,我正在使用 API 获取 JWT 令牌。我应该将 AsyncStorage 与 API 响应一起使用吗?
    • @user3894856 不客气,如果我的答案确实适合您,请不要忘记将我的答案标记为正确答案。
    猜你喜欢
    • 2018-10-09
    • 2020-11-01
    • 2022-12-22
    • 1970-01-01
    • 2016-09-12
    • 1970-01-01
    • 2017-11-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多