【问题标题】:why am i not getting the data from Rapidapi为什么我没有从 Rapidapi 获取数据
【发布时间】:2022-11-23 16:36:00
【问题描述】:

我想使用 rapidapi 使用 redux 获取一些数据,但是当我 console.log 数据时,我将得到 GET https://coinranking1.p.rapidapi.com/coins/coins 401(未经授权)。请问我做错了什么,有人帮帮我

这是我的 store.js 文件中的代码

import { configureStore } from "@reduxjs/toolkit"
import {cryptoApi} from "../services/cryptoApi"

export default configureStore({
    reducer: {
         [cryptoApi.reducerPath]: cryptoApi.reducer,
    },
})

这是我存储从 rapidapi 获取的数据的地方

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

const cryptoApiHeaders = {
    'X-RapidAPI-Host': 'coinranking1.p.rapidapi.com',
    'X-RapidAPI-Key': my-key
}

const baseUrl = 'https://coinranking1.p.rapidapi.com/coins'
const createRequest = (url) => ({url, Headers: cryptoApiHeaders })

export const cryptoApi = createApi({
    ReducerPath: "cryptoApi",
    baseQuery: fetchBaseQuery( { baseUrl } ),
    endpoints: (builder) => ({
        getCryptos: builder.query({
            query: () => createRequest("/exchanges")
        })
    })
})

export const { useGetCryptosQuery, } = cryptoApi;


import { useGetCryptosQuery } from "../services/cryptoApi"

    const {data, isFetching } = useGetCryptosQuery();
    console.log(data);

【问题讨论】:

    标签: reactjs redux-toolkit rapidapi


    【解决方案1】:

    而不是这个:

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

    尝试这样改变:

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

    还添加硬币或者交流根据您需要的数据。

    如果您需要来自交流添加这个:

    query: () => createRequest("/exchanges")
    

    或者如果你需要硬币数据变化如下:

    query: () => createRequest("/coins")
    

    【讨论】:

      【解决方案2】:

      reducerPath 将是 Reducerpath

      【讨论】:

        猜你喜欢
        • 2011-11-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-05-24
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多