Web.Headers

Składnia

Web.Headers(url as text, optional options as nullable record) as record

Informacje

Zwraca nagłówki pobrane z url rekordu. Opcjonalny parametr rekordu , można podać, optionsaby określić dodatkowe właściwości. Rekord może zawierać następujące pola:

  • Query: Programowe dodawanie parametrów zapytania do adresu URL bez konieczności martwienia się o ucieczkę.
  • ApiKeyName: Jeśli witryna docelowa ma pojęcie klucza interfejsu API, ten parametr może służyć do określenia nazwy (a nie wartości) parametru klucza, który musi być używany w adresie URL. Rzeczywista wartość klucza jest podana w poświadczeniu.
  • Headers: Określenie tej wartości jako rekordu spowoduje podanie dodatkowych nagłówków do żądania HTTP.
  • Timeout: Określenie tej wartości jako czasu trwania spowoduje zmianę limitu czasu żądania HTTP. Wartość domyślna to 100 sekund.
  • ExcludedFromCacheKey: Określenie tej wartości jako listy spowoduje wykluczenie tych kluczy nagłówka HTTP z części obliczeń dla danych buforowania.
  • IsRetry: Określenie tej wartości logicznej jako true spowoduje zignorowanie dowolnej istniejącej odpowiedzi w pamięci podręcznej podczas pobierania danych.
  • ManualStatusHandling: Określenie tej wartości jako listy uniemożliwi wszelkie wbudowane obsługę żądań HTTP, których odpowiedź ma jeden z tych kodów stanu.
  • RelativePath: Określenie tej wartości jako tekstu powoduje dołączenie jej do podstawowego adresu URL przed wykonaniem żądania.

Żądanie HTTP jest wykonywane przy użyciu metody HEAD. Poza niestandardowym kontekstem łącznika danych dostępny jest tylko podzbiór nagłówków odpowiedzi (ze względów bezpieczeństwa).

Przykład 1

Pobierz nagłówki HTTP dla "https://bing.com/search?q=Power+Query" opcji RelativePath i Query.

Użycie

let
    searchText = "Power Query"
in
    Web.Headers(
        "https://www.bing.com",
        [
            RelativePath = "search",
            Query = [q = searchText]
        ]
    )

Wyjście

([
    #"Cache-Control" = "private, max-age=0",
    #"Content-Encoding" = "gzip",
    #"Content-Length" = "0",
    #"Content-Type" = "text/html; charset=utf-8",
    Date = "Tue, 14 Dec 2021 16:57:25 GMT",
    Expires = "Tue, 14 Dec 2021 16:56:25 GMT",
    Vary = "Accept-Encoding"
]
meta [
    Response.Status = 200
])