Búsqueda de sitios web

amazon web services - Angular y API Gateway: ¿cómo implementar el método PUT?


Estoy desarrollando una aplicación web con Angular 4 utilizando el lenguaje TypeScript (lado frontend) y AWS con API Gateway (lado backend). Tengo un problema: el API Gateway está configurado con una solicitud PUT para actualizar datos que funciona perfectamente. si utilizo este código en mi aplicación (correctUrl es una cadena que se refiere a la URL correcta)

  putObject(myObject: MyObject) {
   if (this.authService.getAuthToken()) {
    let cognitoToken = this.authService.getAuthToken();
    let headers = new Headers({'Content-Type': 'application/json'}); 
    headers.append('Authorization', cognitoToken); //JWT token
    let url = correctUrl;

   return this.http.put(url, JSON.stringify(myObject) ,
          {headers})
      .map(data => data.json())
      .catch(this.handleError);
    } else {
        let errMsg = 'Error retrieving Authrization token from Cognito 
                      user session';
        console.error('error message: ' + errMsg);
        return Observable.throw(errMsg);
    }
  }

Si invoco este método (que parece estar correctamente escrito), la solicitud PUT no se ejecuta (aunque el objeto JSON coincide perfectamente) y aparece en las consolas: Method PUT is not allowed by Access-Control-Allow-Methods in preflight response. Esto es muy extraño, porque si voy a "Habilitar CORS", hay casillas en los tres Métodos: PUT, GET, OPTIONS (solo porque PUT tiene la marca de verificación, no entiendo cuál es el error. Estoy invocando una solicitud GET de la misma manera y todo funciona perfectamente, no entiendo por qué no sucede lo mismo con PUT!