Maison >développement back-end >tutoriel php >Comment corriger l'erreur « La signature de la demande que nous avons calculée ne correspond pas à la signature que vous avez fournie » dans Amazon S3 avec le SDK AWS PHP ?
Dépannage de l'erreur « La signature de la demande que nous avons calculée ne correspond pas à la signature que vous avez fournie » dans Amazon S3 avec le SDK AWS PHP
Lors de la tentative de connectez-vous à Amazon S3 à l'aide du SDK AWS PHP, les développeurs peuvent rencontrer l'erreur « La signature de la demande que nous avons calculée ne correspond pas à la signature que vous avez fournie. Vérifiez votre clé et votre méthode de signature. » Malgré la vérification des clés d'accès, la génération de nouvelles et l'ajustement des méthodes de transmission des informations d'identification, le problème persiste.
Cette erreur obscure peut résulter d'une source inattendue : des clés d'objet commençant par un point ("."). Dans le code fourni, la clé d'objet est définie comme "..imagesABC.jpg".
Lorsque la clé d'objet commence par un point, le SDK suppose qu'il s'agit d'un chemin absolu et signe la requête en conséquence. Cependant, Amazon S3 n'accepte pas les clés d'objet commençant par un point, ce qui entraîne une incompatibilité de signature.
Solution :
Pour résoudre cette erreur, modifiez simplement la clé d'objet en supprimez le point initial, en vous assurant qu'il s'agit d'un chemin relatif valide dans le compartiment. Par exemple, remplacez « ..imagesABC.jpg » par « images/ABC.jpg ».
Une fois la clé de l'objet ajustée, le SDK créera la signature appropriée et l'opération réussira.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!