0

我目前正在学习如何将 Redux ToolKit Query 与 Open Weather Map API 一起使用,但是当我通过我的应用程序访问端点时,请求包括 localhost 并给了我以下响应:

“您需要启用 JavaScript 才能运行此应用程序。” 带有 200 状态码。

我想知道有没有办法可以从请求中删除 localhost 部分?在没有它的情况下点击该端点会返回正确的信息,因此问题不在于查询或 API_KEY 不正确。

通过应用程序请求:http://localhost:3000/api.openweathermap.org/data/2.5/weather?q=dublin&appid=${API_KEY}

这是我对端点的调用:

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

export const weatherApi = createApi({
  reducerPath: 'weatherApi',
  baseQuery: fetchBaseQuery({ baseUrl: `api.openweathermap.org/data/2.5` }),
  endpoints: (builder) => ({
    getWeather: builder.query({
      query: city => `/weather?q=${city}&appid=${API_KEY}`,
      transformResponse: (response) => response.data,
    })
  })
})

export const { useGetWeatherQuery } = weatherApi

这是我然后打电话的地方useGetWeatherQuery

import { useGetWeatherQuery } from '../redux/api/index';
import '../styles/App.css';

function App() {
  const { data, error, isLoading, isFetching } = useGetWeatherQuery('dublin')
  return (
    <div className="App">
      <Nav/>
      <header className="App-header"> 
      </header>
    </div>
  );
}

export default App;
4

0 回答 0