Получение сетевой ошибки при вызове Post Api, когда почтальон работает нормально - PullRequest
0 голосов
/ 24 апреля 2020

Я вызываю другие API из моего проекта без проблем, есть другой API от стороннего разработчика, работающий на Amazon, и всякий раз, когда я пытаюсь вызвать его, я получаю сетевую ошибку.

Я также пытался вызвать API с другими настройками заголовка запроса, разной длины (полученной от почтальона), также удаляйте Content-Length, но ни одна из них не работает.

Когда я звоню из почтальона, это работает без проблем, но я не могу позвонить из моего React. js PWA Project.

Любая рекомендация будет оценена.

  const requestOptions = {
        method: "POST",
        headers: {
            "Content-Type": "application/json",
            "Content-Length": "291",
            Accept: "*/*"
        },

        body = {
           sourceCode: "123",
           targetCode: "567",   
           load: {
             Endpoint: "TRANSACTION",
             cmdType: "GetValue",
             ReqData: {
                Tag: "ABCD"
             }
           }
        }
     };

     fetch(
            "https://dev.ecr.amobilepayment.com:3000/api/command/queue",
            requestOptions
          )
          .then(async (response) => {   
                console.log("SUCCESS");
                const data = await response.json();     
                if (!response.ok) {         
                    const error = (data && data.message) || response.status;
                    return Promise.reject(error);
                }
            })
            .catch((error) => {
                console.error("ERROR", error);
            });
     console.log("AFTER");

Странно, что консоль показывает только «ПОСЛЕ» и не показывает «УСПЕХ» и "ОШИБКИ" журналы. Я использовал try, catch тоже, но catch не получает исключения.

Ответы [ 2 ]

0 голосов
/ 24 апреля 2020

Проблема заключалась в том, что третья сторона не активировала "CORS" и предполётную проверку, чтобы принимать вызовы из разных источников в AWS.

0 голосов
/ 24 апреля 2020

Я думаю, вы должны использовать

throw error;

вместо

return Promise.reject(error);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...