react-native - 在 React-Native 应用程序中使用带有授权 header 的 Axios GET

标签 react-native oauth-2.0 http-headers fetch axios

我正在尝试将 axios 用于带有需要 Authorization 的 API 的 GET 请求。标题。

我目前的代码:

const AuthStr = 'Bearer ' + USER_TOKEN;

哪里USER_TOKEN是需要的访问 token 。这个字符串连接可能是问题所在,就像我将其发布为 AuthStr = 'Bearer 41839y750138-391' 一样,以下 GET 请求有效并返回我想要的数据。

axios.get(URL, { 'headers': { 'Authorization': AuthStr } })
  .then((response => {
    console.log(response.data);
  })
  .catch((error) => {
    console.log(error);
  });

我也尝试将其设置为全局标题,但没有成功。

最佳答案

对于遇到这篇文章并可能会发现它有用的任何其他人......
我的代码实际上没有任何问题。我犯了请求 client_credentials 类型访问代码而不是密码访问代码 (#facepalms) 的错误。
仅供引用,我正在使用 urlencoded 帖子,因此使用了查询字符串..
所以对于那些可能正在寻找一些示例代码的人..这是我的完整请求

非常感谢@swapnil 试图帮助我调试它。

   const data = {
      grant_type: USER_GRANT_TYPE,
      client_id: CLIENT_ID,
      client_secret: CLIENT_SECRET,
      scope: SCOPE_INT,
      username: DEMO_EMAIL,
      password: DEMO_PASSWORD
    };



  axios.post(TOKEN_URL, Querystring.stringify(data))   
   .then(response => {
      console.log(response.data);
      USER_TOKEN = response.data.access_token;
      console.log('userresponse ' + response.data.access_token); 
    })   
   .catch((error) => {
      console.log('error ' + error);   
   });



const AuthStr = 'Bearer '.concat(USER_TOKEN); 
axios.get(URL, { headers: { Authorization: AuthStr } })
 .then(response => {
     // If request is good...
     console.log(response.data);
  })
 .catch((error) => {
     console.log('error ' + error);
  });

关于react-native - 在 React-Native 应用程序中使用带有授权 header 的 Axios GET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41519092/

相关文章:

ios - React Native xcode 项目 "Header Search Path"

reactjs - 在SectionList上执行scrollToLocation时发生崩溃

angular - OpenID 连接 : Implicit or Auth Code flow for SPAs?

c# - HttpContent header 不一致的枚举

ios - React-Native iOS 热重载和 Debug模式在真实设备中不起作用

javascript - 如何在 React Native 中使元素固定在滚动条上?

oauth-2.0 - 使用 Google 登录的编程流程

android - 在安卓中实现oauth

flask - AWS 弹性 Beanstalk : HTTP Header not appearing in Flask application

ios - 如何解决这个问题 "Ambiguous reference to member ' dataTask(with :completionHandler: )' "