Testowanie interfejsu API REST konfiguracji aplikacja systemu Azure przy użyciu programu Fiddler
Aby przetestować interfejs API REST przy użyciu programu Fiddler, należy uwzględnić nagłówki HTTP wymagane do uwierzytelniania w żądaniach. Poniżej przedstawiono sposób konfigurowania programu Fiddler do testowania interfejsu API REST, automatycznego generowania nagłówków uwierzytelniania:
Upewnij się, że protokół TLS 1.2 jest dozwolony:
- Przejdź do pozycji Narzędzia>Opcje>HTTPS).
- Upewnij się, że zaznaczono opcję Odszyfrowywanie ruchu HTTPS.
- Na liście protokołów dodaj protokół TLS1.2 , jeśli nie istnieje.
Otwórz Edytor skryptów programu Fiddler lub naciśnij klawisze Ctrl-R w narzędziu Fiddler
Dodaj następujący kod wewnątrz
Handlers
klasy przed funkcjąOnBeforeRequest
static function SignRequest(oSession: Session, credential: String, secret: String) { var utcNow = DateTimeOffset.UtcNow.ToString("r", System.Globalization.DateTimeFormatInfo.InvariantInfo); var contentHash = ComputeSHA256Hash(oSession.RequestBody); var stringToSign = oSession.RequestMethod.ToUpperInvariant() + "\n" + oSession.PathAndQuery + "\n" + utcNow +";" + oSession.hostname + ";" + contentHash; var signature = ComputeHMACHash(secret, stringToSign); oSession.oRequest.headers["x-ms-date"] = utcNow; oSession.oRequest.headers["x-ms-content-sha256"] = contentHash; oSession.oRequest.headers["Authorization"] = "HMAC-SHA256 Credential=" + credential + "&SignedHeaders=x-ms-date;host;x-ms-content-sha256&Signature=" + signature; } static function ComputeSHA256Hash(content: Byte[]) { var sha256 = System.Security.Cryptography.SHA256.Create(); try { return Convert.ToBase64String(sha256.ComputeHash(content)); } finally { sha256.Dispose(); } } static function ComputeHMACHash(secret: String, content: String) { var hmac = new System.Security.Cryptography.HMACSHA256(Convert.FromBase64String(secret)); try { return Convert.ToBase64String(hmac.ComputeHash(System.Text.Encoding.ASCII.GetBytes(content))); } finally { hmac.Dispose(); } }
Dodaj następujący kod na końcu
OnBeforeRequest
funkcji. Zaktualizuj klucz dostępu wskazany przez komentarz TODO.if (oSession.isFlagSet(SessionFlags.RequestGeneratedByFiddler) && oSession.hostname.EndsWith(".azconfig.io", StringComparison.OrdinalIgnoreCase)) { // TODO: Replace the following placeholders with your access key var credential = "<Credential>"; // Id var secret = "<Secret>"; // Value SignRequest(oSession, credential, secret); }
Generowanie i wysyłanie żądania przy użyciu narzędzia Fiddler's Composer
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla