Video: Vervelende Mannen In De Club? Dit Is Hoe Je Ruzie Voorkomt - TVS #22 2024
Het zou leuk zijn als alles precies werkte zoals gepland bij het maken van uw REST-oproep naar AWS. Er kunnen echter een aantal problemen optreden die resulteren in een foutbericht dat lijkt op het bericht dat u hier ziet. Merk op dat de afbeelding niet compleet is. De sleutelwaarden zijn geblokkeerd om de bruikbaarheid van de toegangstoetsen te behouden.
Foutberichten kunnen verschillende vormen aannemen.Het probleem kan uit verschillende bronnen komen. De eerste oplossing is het URL-coderen van de handtekening om ervoor te zorgen dat speciale tekens in de URL-reeks AWS niet verwarren. Een hulpmiddel dat u kunt gebruiken om dit probleem te verhelpen, is de URL-decoder / codering. Om deze tool te gebruiken, plakt u eenvoudig de handtekening (niet de volledige URL) in het veld en klikt u op Encode. De resulterende handtekening bevat geen speciale tekens, maar gebruikt eerder URL-codering om problemen te voorkomen.
Zelfs als u de door Amazon geleverde codefragmenten gebruikt, kan het proces voor handtekeningberekening ook fout gaan. Kijk nogmaals naar de eerste afbeelding, op de
StringToSign
en
StringToSignBytes
elementen. Deze elementen vertellen u wat AWS verwachtte toen het de handtekening controleerde. Het geeft je natuurlijk nog steeds geen idee welke waarde je zou moeten hebben voor een handtekening. Gelukkig kan de Amazon Signature Tester deze informatie verstrekken.
Je downloadt de Amazon Signature Tester naar je harde schijf. Wat je krijgt is een README-bestand en een HTML-pagina die je in je browser laadt. De onderstaande afbeelding laat zien hoe de onderkant van deze pagina wordt weergegeven. U wilt onderaan de pagina werken omdat deze twee velden bevat die u moet leveren: de elementwaarde
StringToSignBytes
en uw geheime sleutel.
Wanneer u op Handtekening ophalen klikt, ziet u de elementwaarde
StringToSign
zoals AWS die ziet, de daadwerkelijke handtekening en de URL-gecodeerde handtekening. U gebruikt de URL-gecodeerde handtekening bij uw oproep aan AWS. Om deze handtekening te valideren, vervangt u eenvoudig de huidige waarde in de URL-reeks door deze nieuwe waarde. Als het probleem zich in uw handtekeningcode voordoet, zou de oproep volgens verwachting moeten werken.
De reden waarom u de elementwaarde
StringToSign
opnieuw wilt controleren, is dat AWS deze mogelijk anders ziet dan u. Merk bijvoorbeeld op dat in dit geval er drie nieuwe-lijntekens zijn tussen
GET
en de
verloopt
-waarde van 1490652000. Als uw handtekeningberekeningscode deze vereiste niet in aanmerking neemt, handtekening klopt niet.U kunt hier aanvullende hulpprogramma's voor het oplossen van problemen vinden.