Метод POST не работает (выборка или Axios) в приложении с естественной реакцией (Android) - PullRequest
0 голосов
/ 30 апреля 2019

Я использую метод API CALL width POST с Axios или Fetch, но отправляю неправильный Content-Type на Android.

Отправить application/json; charset=utf-8 вместо application/json

Он отлично работает на iOS, а метод GET, кажется, хорошо работает на обеих платформах.

1) Мое приложение было создано с помощью приложения Create-React-Native и работает с Expo

2) То, что я пробовал до сих пор:

  • Я прочитал много тем (github / stackoverflow) с некоторыми изменениями: в заголовках отправьте другой тип контента, измените полученные данные в Postman и т. Д., Используя Axios или Fetch

Пример: 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'

Код, который я пробовал (в основном то же самое)

fetch('URL', {
  method: 'POST',
  headers: {
    'TOKEN': 'TOKEN',
    'Accept': 'application/json',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify(data),
}).then((response) => console.log(response))

или

axios({
  method: 'post',
  url: LOGIN_API_URL,
  headers: {
    'Content-type': 'application/json',
    'TOKEN': 'MyTestToken',
  },
  data: data,
}).then((response) => {console.log(response.data)})

Я получаю ошибку:

{title: "ERROR", code: "invalid ContentType", description: "Content-Type expeced: application/json, Content-Type received: application/json; charset=utf-8", success: false}

Я хотел бы отправить право content-type: 'application/json' для обеих платформ: ios и android

Если я пропустил некоторые темы с ответом, извините:)

1 Ответ

1 голос
/ 30 апреля 2019

это похоже на ошибку со стороны axios (см. https://github.com/axios/axios/issues/859) Кажется, существует возможное решение, связанное с тем, указан параметр data или нет (https://github.com/axios/axios/issues/86):

https://github.com/axios/axios/issues/86#issuecomment-405930811

const config = {
  headers: {
    accept: 'application/json',
  },
  data: {},
};

Я надеюсь, что это может указать вам правильное направление.

...