#reactjs #soap #axios
#reactjs #soap #axios
Вопрос:
Я пытаюсь сделать запрос soap, используя axios в ReactJS. Моя конечная точка — это одна: https://www.w3schools.com/xml/tempconvert.asmx .
Однако, когда я использую заголовок «Content-Type»: «text / xml», я получаю следующую ошибку в консоли браузера:
Доступ к XMLHttpRequest по адресу ‘https://www.w3schools.com/xml/tempconvert.asmx » из источника «http://localhost:3000 ‘ был заблокирован политикой CORS: тип содержимого поля заголовка запроса не разрешен с помощью Access-Control-Allow-Headers в предполетном ответе.
И когда я не использую его, я получаю ошибку состояния 415, потому что конечная точка не распознает формат файла. Могу ли я обойти политики CORS конечной точки?
Это файл, который отправляет запрос:
import axios from "axios";
const sampleHeaders = {
"Content-Type": "application/soap-xml",
};
const xml = `<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<FahrenheitToCelsius xmlns="https://www.w3schools.com/xml/">
<Fahrenheit>75</Fahrenheit>
</FahrenheitToCelsius>
</soap12:Body>
</soap12:Envelope>"`;
const getTemp = () => {
axios({
method: "post",
url: "https://www.w3schools.com/xml/tempconvert.asmx",
headers: sampleHeaders,
data: xml,
withCredentials: false,
}).then((response) => console.log(response));
};
export default getTemp;