Задать вопрос
@DeboshiR
Свободу разработчикам!!!

Как отправить curl через Angular?

Пытаюсь отправить примерно такой curl:
curl -X POST https://secure.payu.com/api/v2_1/orders \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer 3e5cac39-7e38-4139-8fd6-30adc06a61bd" \
    -d '{
        "notifyUrl": "https://your.eshop.com/notify",
        "customerIp": "127.0.0.1",
        "merchantPosId": "145227",
        "description": "RTV market",
        "currencyCode": "PLN",
        "totalAmount": "21000",
        "buyer": {
            "email": "john.doe@example.com",
            "phone": "654111654",
            "firstName": "John",
            "lastName": "Doe",
            "language": "pl"
        },
        "products": [
            {
                "name": "Wireless Mouse for Laptop",
                "unitPrice": "15000",
                "quantity": "1"
            },
            {
                "name": "HDMI cable",
                "unitPrice": "6000",
                "quantity": "1"
            }
        ]
    }'


В angular он выглядит примерно так:
const body = {
  "notifyUrl": "https://your.eshop.com/notify",
  "customerIp": "127.0.0.1",
  "merchantPosId": "145227",
  "description": "RTV market",
  "currencyCode": "PLN",
  "totalAmount": "21000",
  "buyer": {
    "email": "john.doe@example.com",
    "phone": "654111654",
    "firstName": "John",
    "lastName": "Doe",
    "language": "pl"
  },
  "products": [
    {
      "name": "Wireless Mouse for Laptop",
      "unitPrice": "15000",
      "quantity": "1"
    },
    {
      "name": "HDMI cable",
      "unitPrice": "6000",
      "quantity": "1"
    }
  ]
}

this.http
  .post<any>('https://secure.snd.payu.com/api/v2_1/orders', body, { headers: headers })
  .subscribe(res => {
    console.log(res);
  });

Запрос из консоли срабатывает нормально, но запрос из браузера возвращает ошибку
Access to XMLHttpRequest at 'https://secure.snd.payu.com/api/v2_1/orders' from origin 'localhost:4200' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

Что я делаю не так?
  • Вопрос задан
  • 240 просмотров
Подписаться 1 Средний 3 комментария
Помогут разобраться в теме Все курсы
  • Учебный центр IBS
    WEB-022 Разработка на Angular. Продвинутый уровень
    1 неделя
    Далее
  • Учебный центр IBS
    WEB-007 Разработка на JavaScript
    1 неделя
    Далее
  • Javascript.ru
    Курс по Angular
    6 недель
    Далее
Пригласить эксперта
Ответы на вопрос 1
solotony
@solotony
покоряю пик Балмера
браузер по умолчанию выполняет проверку, разрешено ли текущему сайту выполнять запросы на конкретный сервер (CORS policy).

что бы это обойти надо либо добавить для сервера поддержку CORS либо в браузере отключить CORS
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы