Ошибка при попытке воспроизвести запрос почтальона (отправить изображение) на угловой 7 - PullRequest
0 голосов
/ 09 января 2019

Я создал приложение со следующей архитектурой:

  • Клиент: Угловой 7
  • Серверная часть: пружинная загрузка

Цель состоит в том, чтобы сделать снимок экрана пользователя и сравнить его с изображением в базе данных с помощью AWS Rekognition API. Но я продолжаю получать ошибку CORS


  1. Передняя сторона выполняет POST-вызовы сзади (REST API, построенный с использованием Spring) и отправляет изображение
  2. Back получает изображение и отправляет его в AWSRekognition API (используя AWS SDK) с целевым изображением, хранящимся в базе данных
  3. API AWS отправляет обратно результат
  4. API-интерфейс Back Spring отправляет обратно клиенту результат

  • Когда я использую Postman и сохраняю код, который вызывает API-интерфейс AWS: ОК, он работает нормально

  • Когда я пытаюсь запустить свой веб-браузер и СОХРАНИТЬ код вызова AWS API: я получаю ошибку CORS Вот скриншот почтальона:

Вот угловой код: picture.components.ts

  /**
   * take picture from camera
   */
  takeSnap(){
this.canvas.getContext("2d").drawImage(this.video, 0, 0, 300, 300, 0, 0, 300, 300);

this.canvas.toBlob((res)=>{
  console.log(res);
  let img: File ;
  img = res;

  if (this.selectedUserId!=null) {

    let authInfo = new FormData();

    authInfo.append("image" , new File([img], 'img')); 
    authInfo.append("id" , this.selectedUserId.toString()); 

    this.requestSer.identify(authInfo).subscribe((x)=>{
      this.readVerifyResponse(x);
    });
  }
});


  }

Вот запрос.service.ts

export class RequestService {

 constructor(
    private http  : HttpClient,
    private globals: Globals
    ) { }

/**
 * Send image to veify identity
 * @param img File
 */
  identify(authInfo) : Observable<File>{
    return this.http.post<File>(this.globals.server_full+'rekognition/compareFaces' , authInfo);
  }

Если кто-то может мне помочь, это было бы супер здорово, ура Alexis

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...