URL запроса API GET работает на Brave / Chrome, но не на fetch () - PullRequest
0 голосов
/ 12 марта 2020

Когда я вставляю и просматриваю этот URL

https://api.openweathermap.org/data/2.5/forecast?lat=39.48923&lon=-0.4780256&appid=b11fc49d6b14456d6aacedc8d0153072

, он просто отлично выполняет запрос:

enter image description here

Но затем в моем коде, когда я хочу получить его и сохранить это json, получается «Сетевой запрос не удался»:

enter image description here

Я использовал только fetch () с локальными URL, и он всегда работал. Это мой код (вы можете использовать мой API-ключ, я могу создать новый позже):

GetClima() {
    //fetch(`${this.state.api.url}lat=${this.props.latitudDestino}&lon=${this.props.longitudDestino}&appid=${this.state.api.key}`)
    fetch("https://api.openweathermap.org/data/2.5/forecast?lat=39.48923&lon=-0.4780256&appid=b11fc49d6b14456d6aacedc8d0153072")
    .then(res => res.json())
    .then(res => {
        this.setState({
            dataClima: res
        })
    })
  }

1 Ответ

1 голос
/ 12 марта 2020

Это потому, что ваш эмулятор / симулятор не подключен к inte rnet. Я могу видеть ваш значок Wi-Fi в строке состояния, говорящий, что он не подключен к inte rnet.

Он четко говорит Type Error: Network Request Failed. Убедитесь, что вы правильно настроили ваше виртуальное устройство и проверьте ваше inte rnet соединение.

Сказав это, убедитесь, что вы правильно перехватываете ошибки, используя .catch () или используя try-catch блок, если вы используете asyn c -await

...