Задать вопрос
@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.

Что я делаю не так?
  • Вопрос задан
  • 241 просмотр
Подписаться 1 Средний 3 комментария
Помогут разобраться в теме Все курсы
  • Skillfactory
    Специализация Frontend-разработчик
    9 месяцев
    Далее
  • Академия Eduson
    Frontend-разработчик
    9 месяцев
    Далее
  • OTUS
    JavaScript Developer. Professional
    5 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
solotony
@solotony
покоряю пик Балмера
браузер по умолчанию выполняет проверку, разрешено ли текущему сайту выполнять запросы на конкретный сервер (CORS policy).

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

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

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