Запрос API к БЫСТРОМУ API дает код состояния: 401,

#reactjs #api #redux #store #rapidapi

Вопрос:

 import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query/react';

const cryptoApiHeaders = {
  'x-rapidapi-key': 'coinranking1.p.rapidapi.com',
  'x-rapidapi-host': '935af67341msh072d3f07b71a1f8p1cb0b5jsn44961d90a001',
};

const baseUrl = 'https://coinranking1.p.rapidapi.com';

const createRequest = (url) => ({ url, headers: cryptoApiHeaders });

export const cryptoApi = createApi({
  reducerPath: 'cryptoApi',
  baseQuery: fetchBaseQuery({ baseUrl }),
  endpoints: (builder) => ({
    getCryptos: builder.query({
      query: () => createRequest('/coins'),
    }),
  }),
});

export const { useGetCryptosQuery } = cryptoApi;
 

** Я пытался подключить api из RapidAPI, но я продолжаю получать 401 несанкционированный.
Я сам не мог понять :3 кто-нибудь, помогите мне, пожалуйста
**

Ответ №1:

Ваши заголовки должны быть такими

 const cryptoApiHeaders = {
  'x-rapidapi-host': 'coinranking1.p.rapidapi.com',
  'x-rapidapi-key': '935af67341msh072d3f07b71a1f8p1cb0b5jsn44961d90a001',
};
 

Комментарии:

1. спасибо тебе огромное @SoGoddamnUgly , ты прекрасный человек

2. пожалуйста, отметьте мой комментарий как принятое решение, спасибо!

Ответ №2:

Просто передайте ключ API и разместите его другим способом. Подобный этому

 'x-rapidapi-key': '935af67341msh072d3f07b71a1f8p1cb0b5jsn44961d90a001',
'x-rapidapi-host': 'coinranking1.p.rapidapi.com',
 

P.S. Ключ API-это конфиденциальные учетные данные, которые могут быть использованы не по назначению. Вы только что раскрыли свой API-ключ. Я рекомендую вам удалить этот ключ API и создать новый для вас на панели разработчиков RapidAPI