【问题标题】:Laravel Passport works fine on PostMan, but returns 401 inside the react native app?Laravel Passport 在 PostMan 上运行良好,但在反应原生应用程序中返回 401?
【发布时间】:2020-01-26 10:56:55
【问题描述】:

当我在 react native 应用程序中进行 Axios 调用时,它返回 401。但是,当我在“网络”选项卡中抓取已解析的标题时,它显示:

     const config = { 
        method: "POST",
        baseURL: API_URL, 
        data:request_data,
        headers: { 
             'Authorization' : 'Bearer '+ token
           }
        }


  let  data  = await axios('user_update_profile',config)
  console.log(data)  //return 401 Unauthorized Error

知道如何解决这个问题吗? 我正在使用 Laravel 版本 6

【问题讨论】:

  • 令牌在哪里设置?
  • 我在令牌变量中设置了令牌
  • 是的,你在你的应用程序中的哪里设置?
  • 您是否检查过浏览器中的“网络”选项卡以确保正确设置了 Bearer 令牌?
  • 再次,我推荐你使用 Laravel Telescope。安装完成后,运行 Postman 请求和 axios 请求,对比两者。您可以通过单击“请求”选项卡中的 眼睛 符号来查看请求。

标签: javascript reactjs laravel react-native laravel-passport


【解决方案1】:

在axios中设置header的正确方法 走错路了:

     const config = { 
        method: "POST",
        baseURL: API_URL, 
        data:request_data,
        headers: { 
             'Authorization' : 'Bearer '+ token
           }
        }


  let  data  = await axios('user_update_profile',config)

所以正确的方法是

  let  data  = await axios.post(API_URL+'user_update_profile',request_data,{
    headers: {
      'Content-Type': 'application/json',
      'Authorization': 'Bearer '+token
  }
  })
  // console.log('----cheers---------',data)
dispatch(userUpdateProfileSuccess(data))

谢谢

【讨论】:

    猜你喜欢
    • 2020-03-05
    • 2022-08-19
    • 1970-01-01
    • 2021-12-10
    • 2017-11-16
    • 2020-08-21
    • 1970-01-01
    • 2015-01-03
    • 2023-03-28
    相关资源
    最近更新 更多