Web.Contents
Syntaks
Web.Contents(url as text, optional options as nullable record) as binary
Om
Returnerer innholdet som lastes ned fra url
som binært. Det kan være angitt en valgfri postparameter options
for å angi flere egenskaper. Posten kan inneholde følgende felt:
Query
: Legg programmatisk til spørringsparametere i nettadressen uten å måtte bekymre deg for å slippe unna.ApiKeyName
: Hvis målområdet har en forestilling om en API-nøkkel, kan denne parameteren brukes til å angi navnet (ikke verdien) for nøkkelparameteren som må brukes i URL-adressen. Den faktiske nøkkelverdien angis i legitimasjonen.Headers
: Hvis du angir denne verdien som en post, får du flere overskrifter til en HTTP-forespørsel.Timeout
: Hvis du angir denne verdien som en varighet, endres tidsavbruddet for en HTTP-forespørsel. Standardverdien er 100 sekunder.ExcludedFromCacheKey
: Hvis du angir denne verdien som en liste, utelates disse HTTP-topptekstnøklene fra å være en del av beregningen for hurtigbufring av data.IsRetry
: Hvis du angir denne logiske verdien som sann, ignoreres eventuelle eksisterende svar i hurtigbufferen når du henter data.ManualStatusHandling
: Hvis du angir denne verdien som en liste, forhindres innebygd håndtering for HTTP-forespørsler som har en av disse statuskodene.RelativePath
: Hvis du angir denne verdien som tekst, føyer den til den grunnleggende URL-adressen før du foretar forespørselen.Content
: Hvis du angir denne verdien, endres webforespørselen fra EN HENT til et INNLEGG, ved hjelp av verdien for alternativet som innhold i POST.
HTTP-forespørselen gjøres enten som en GET (når det ikke er angitt innhold) eller et INNLEGG (når det er innhold). POST-forespørsler kan bare gjøres anonymt.
Topptekstene i HTTP-svaret er tilgjengelige som metadata for det binære resultatet. Utenfor en egendefinert datakoblingskontekst er bare et delsett av svaroverskrifter tilgjengelig (av sikkerhetsgrunner).
Eksempel 1
Hent innholdet i bruk RelativePath
av "https://bing.com/search?q=Power+Query"
alternativene og Query
. Disse alternativene kan brukes til dynamisk spørring av en statisk basis-NETTADRESSE.
Bruk
let
searchText = "Power Query"
in
Web.Contents(
"https://www.bing.com",
[
RelativePath = "search",
Query = [q = searchText]
]
)
Utdata
binary
Eksempel 2
Utfør et INNLEGG mot en NETTADRESSE, send en binær JSON-nyttelast og analyser svaret som JSON.
Bruk
let
url = ...,
headers = [#"Content-Type" = "application/json"],
postData = Json.FromValue([x = 235.7, y = 41.53]),
response = Web.Contents(
url,
[
Headers = headers,
Content = postData
]
),
jsonResponse = Json.Document(response)
in
jsonResponse
Utdata
table
Eksempel 3
Koble til til en sikker URL-adresse som godtar en godkjenningsnøkkel som en del av spørringsstrengen. I stedet for å hardkode den hemmelige nøkkelen i M (som ville utgjøre en sikkerhetsrisiko), kan nøkkelen gis sikkert ved å angi navnet (ikke verdien) i M, velge web-API-godkjenning og skrive inn nøkkelverdien som en del av web-API-legitimasjonen. Når det brukes på denne måten, vil eksemplet nedenfor generere en forespørsel til "https://contoso.com/api/customers/get?api_key=******"
.
Bruk
Web.Contents("https://contoso.com/api/customers/get", [ApiKeyName="api_key"])
Utdata
binary
Mer informasjon
Statuskodehåndtering med Web.Contents i egendefinerte koblinger