CORS Проблема при использовании Mailgun поверх HttpClient - PullRequest
0 голосов
/ 18 марта 2019

Я работаю с Angular 7 и пытаюсь отправлять электронную почту с помощью Mailgun API. Я получил ошибку политики CORS, указанную ниже, даже после включения запроса Headers Origin со своей стороны. Это вызвано со стороны сервера? Или я должен внести некоторые изменения в код ниже, чтобы он работал?

import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders } from '@angular/common/http';

@Injectable({
  providedIn: 'root'
})
export class MailService {
  constructor(private http: HttpClient) { }

  sendEmail() {
    const header = new HttpHeaders({
      'Authorization': 'Basic ' + 'api:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
      'Access-Control-Allow-Headers': 'Content-Type, x-requested-with',
      'Access-Control-Allow-Origin': '*',
      'Access-Control-Allow-Methods': 'GET, POST, PUT, DELETE, OPTIONS'
    });

    const formData = new FormData();
    formData.append('from', 'zname <zname@sandboxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.mailgun.org>');
    formData.append('to', 'example@hotmail.com');
    formData.append('subject', 'Hello');
    formData.append('text', 'This is cool !');

    this.http
    .post('https://api.mailgun.net/v3/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.mailgun.org/messages',
    formData, { headers:header, withCredentials: true }).subscribe(
          res => { console.log('res : ', res); },
          err => { console.error('err : ', err); },
          () => console.log('data :', formData),
      );
  }
}
...