Video: Claves para entender la vida y volver a tu esencia - Suzanne Powell en Albacete 29-10-2016 2024
Det skulle vara trevligt om allt fungerade exakt som planerat när du gjorde ditt REST-samtal till AWS. Ett antal problem kan dock uppstå som resulterar i ett felmeddelande som liknar det du ser här. Observera att bilden inte är klar. Nyckelvärdena är blockerade för att hålla åtkomstnycklarna användbara.
Felmeddelanden kan ta olika former.Problemet kan komma från olika källor. Den första lösningen är att URL-koda signaturen för att säkerställa att specialtecken i URL-strängen inte förväxlar AWS. Ett verktyg som du kan använda för att lösa detta problem är URL-avkodaren / Encoderen. För att använda det här verktyget, klistra in signaturen (inte hela webbadressen) i fältet och klicka på Koda. Den resulterande signaturen innehåller inga specialtecken, men använder snarare URL-kodning för att förhindra problem.
Även om du använder de kodade koderna i Amazon, kan signaturberäkningen också gå fel. Titta igen på den första bilden, vid
StringToSign
och
StringToSignBytes
-elementen. Dessa element berättar vad AWS väntade när det kontrollerade signaturen. Naturligtvis ger det dig fortfarande ingen aning om vilket värde du borde ha gett för en signatur. Lyckligtvis kan Amazon Signature Tester tillhandahålla denna information.
Du laddar ner Amazon Signature Tester på din hårddisk. Vad du får är en README-fil och en HTML-sida som du laddar in i din webbläsare. Bilden nedan visar hur botten på den här sidan visas. Du vill arbeta längst ner på sidan eftersom det innehåller två fält som du behöver leverera: elementet
StringToSignBytes
och din hemliga nyckel.
När du klickar på Få signatur ser du elementvärdet
StringToSign
som AWS ser det, den faktiska signaturen och den URL-kodade signaturen. Du använder den URL-kodade signaturen med ditt samtal till AWS. För att validera denna signatur ersätter du bara det nuvarande värdet i URL-strängen med det här nya värdet. Om problemet finns i din signaturkod ska samtalet fungera som förväntat.
Anledningen till att du vill kontrollera elementet
StringToSign
är att AWS kan se det annorlunda än du gör. Tänk på att i det här fallet finns tre nya tecken mellan
GET
och värdet
Gäller
1490652000. Om din signaturberäkningskod inte beaktar detta krav beaktas signaturen kommer att vara felaktig.Du kan hitta ytterligare felsökningshjälpmedel här.