Im Gebäude ein Service +-Client die folgenden Amazon Technologien:Erster Aufruf Gesicherte API-Endpunkt AWS_IAM ist immer unberechtigten
- Lambda
- S3
- API-Gateway
- Cognito
- Federated Identities
Ich verwende den Serverless-Rahmen arbeiten, um die API zu erstellen und bereitzustellen. Der Client ist eine eckige 1-App, die in einem S3-Bucket gehostet wird.
Der API-Endpunkt wird mit AWS_IAM gesichert. Das Problem ist, dass der erste Aufruf der API von meinem JS-Client aus nicht autorisiert ist. Jeder nachfolgende Aufruf (mit denselben Anmeldeinformationen) ist autorisiert. Ich kann in meinem Protokoll sehen, dass
var accessKeyId = AWS.config.credentials.accessKeyId;
var secretAccessKey = AWS.config.credentials.secretAccessKey;
var sessionToken = AWS.config.credentials.sessionToken;
ist undefined das erste Mal, wenn ich den Anruf mache.
Was ich hoffe zu erreichen ist, dass die erforderlichen Anmeldeinformationen abgerufen werden, so dass der erste Aufruf erfolgreich ist.
Der folgende Code wird verwendet, um die Anmeldeinformationen von Amazon Cognito abzurufen und die API aufzurufen. Ich verwende das generierte JavaScript-SDK von AWS API Gateway, um die Anfrage zu signieren und die API aufzurufen.
Ich denke, dass aws.config.cred.get ((err), die erste Param Funktion der Fehler ist ... sollten Sie prüfen, ob es eine Fehlermeldung. .. – UXDart