GET вызов к действительному API возвращает ошибку 404 на iOS - PullRequest
0 голосов
/ 26 апреля 2020

Я пытаюсь получить данные с сайта моего друга: https://www.hvgea.nl/app/fetchPosts. Этот API работает на Android, он хорошо выбирается, но на iOS он возвращает эту ошибку: Ошибка: ошибка: запрос не выполнен с кодом состояния 404 . Этот API возвращает те же данные, что и на моем собственном веб-сайте: https://www.cphilipse.nl/wordpress/app/fetchPosts. И когда я использую свой собственный веб-сайт, он работает, он не возвращает ошибку 404 на iOS и Android. Теперь я также протестировал API с помощью curl, выполнив curl --head API , и они оба возвращают статус 200. Так что я совершенно запутался в том, в чем может быть проблема, я понятия не имею, что пытаться больше, я использую Ax ios для извлечения данных, это мой код:

const apiRequest = async ({
    method = GET,
    endpoint,
    body,
    headers,
    hasInternet = true,
}:
Props) => {
    const config: object = {
        method: method,
        url: endpoint,
        data: {
            ...body,
        },
        headers: headers,
    };
    const getConfig: object = {
        method: method,
        url: endpoint,
    };
    if (hasInternet) {
        const response = await axios(method === GET ? getConfig : config);
        return response.data;
    } else {
        FadeToast(localizedCopy.toastMessages.noInternet);
        return {connectionFailed: true};
    }
};

// I call this abstracted call like this:
const endpoint = endpoints.fetchPosts.fetchPosts;
        const response = await apiRequest({
            endpoint,
            hasInternet: state.profileReducer.isConnected,
        });

Я попробовал это напрямую с обычной загрузкой, но это дает точно такую ​​же проблему. Я также попробовал это с заголовками, но это тоже ничего не дало. Я не мог найти никого с такой же проблемой, поэтому любой совет будет оценен. Попробуем сделать хорошую закуску позже, но вы можете легко воспроизвести это с помощью этой закуски: https://snack.expo.io/@rafah-mehfooz / network-запросы-with-fetch , затем замените api fetch на мои api и затем просмотрите логи. , Поэтому замените ответ следующим:

// const response = await fetch('https://www.hvgea.nl/app/fetchPosts/')
      const response = await fetch('https://www.cphilipse.nl/wordpress/app/fetchPosts/')
...