Axios.get 没有返回任何数据

问题描述 投票:0回答:1

我无法在我的 API 上获得正确的信息。 我试过了,但没有任何结果:

const App = () => {
  const res = () => {
    axios.get('https://api.scripture.api.bible/v1/bibles', {
      headers: {
        'api-key': '5b5d4503884b7a2515e8cee8f4b00746',
      },
      
    })
  }
javascript reactjs axios http-headers
1个回答
0
投票

您的代码工作正常,但您没有对响应执行任何操作。

axios.get()
返回一个Promise,所以你需要使用
.then()

来处理它
const res = () => {
   axios.get("https://api.scripture.api.bible/v1/bibles", {
      headers: {
         "api-key": "5b5d4503884b7a2515e8cee8f4b00746"
      }
   })
   .then(function (response) {
      console.log(response);
   })
   .catch(function (error) {
      console.log(error);
   });
};

res();

或创建一个

async
函数并使用 async wait

const res = async () => {
   try {
      const response = await axios.get("https://api.scripture.api.bible/v1/bibles", {
         headers: {
            "api-key": "5b5d4503884b7a2515e8cee8f4b00746"
         }
      });
      console.log(response);
   } catch (error) {
      console.log(error);
   }
};

res();

您可以做任何事情,而不是

console.log
,例如使用回调函数

const res = async (callback, errorCallback) => {
   try {
      const response = await axios.get("https://api.scripture.api.bible/v1/bibles", {
         headers: {
            "api-key": "5b5d4503884b7a2515e8cee8f4b00746"
         }
      });
      callback(response);
   } catch (error) {
      errorCallback(error);
   }
};

const onSuccess = result => {
   const data = JSON.stringify(result);
   alert(data)
};

const onError = error => {
   alert(`Ops! An error occured: ${error}`);
};

res(onSuccess, onError);
© www.soinside.com 2019 - 2024. All rights reserved.