首页 > 解决方案 > 我正在对 api 提出请求,但即将授权失败。如何在获取链接中包含授权令牌

问题描述

我有这个关于在 react.js 中使用 fetch 命令的 http resquest 的问题,响应是授权失败。我对所有这些东西都很陌生。如何成功地从链接中获取数据?

我试过这段代码:

import React, {useState,useEffect} from "react";
import { async } from "q";


function Shop(){
  useEffect(() => { //this function will run when component did mount
    fetchItems();
  },[]);
  const [items, setItems] = useState([]);

  const fetchItems = async () => {
    const data = await fetch("https://fortnite-api.theapinetwork.com/upcoming/get");
    console.log(data)
    const items = await data.json();
    console.log(items);
    setItems(items);
  }


return(<div>
  { items.map(item => (
   <h1 key={item.itemid}>{item.name}</h1>
   ))
  }           
  </div>
  )
}
export default Shop;

获取数据时出现以下错误:

错误:{"success":false,"error":"请添加您的授权令牌。","eCode":"authorization.empty","_console":" https://console.fortniteapi.com "}

标签: reactjsapihttpsreact-router

解决方案


您可能需要将其添加到标题中,如下所示:

fetch(
    "https://fortnite-api.theapinetwork.com/upcoming/get",
    {
        headers: {
            Authorization: 'Bearer [your-token-here]'
        },
    }
)

推荐阅读