Web.Contents
Web.Contents(url as text, optional options as nullable record) as binary
url
'dan indirilen içeriği ikili olarak döndürür. ek özellikleri belirtmek için isteğe bağlı bir kayıt parametresi options
sağlanabilir. Kayıt aşağıdaki alanları içerebilir:
-
Query
: Kaçış konusunda endişelenmenize gerek kalmadan URL'ye program aracılığıyla sorgu parametreleri ekleyin. -
ApiKeyName
: Hedef sitede API anahtarıyla ilgili bir fikir varsa, url'de kullanılması gereken anahtar parametresinin adını (değeri değil) belirtmek için bu parametre kullanılabilir. Gerçek anahtar değeri kimlik bilgileri içinde sağlanır. -
Headers
: Bu değerin kayıt olarak belirtilmesi, http isteğine ek üst bilgiler sağlar. -
Timeout
: Bu değerin süre olarak belirtilmesi, HTTP isteğinin zaman aşımını değiştirir. Varsayılan değer 100 saniyedir. -
ExcludedFromCacheKey
: Bu değerin liste olarak belirtilmesi, bu HTTP üst bilgi anahtarlarını önbelleğe alma verilerini hesaplamanın bir parçası olmaktan çıkarır. -
IsRetry
: Bu mantıksal değerin true olarak belirtilmesi, veri getirilirken önbellekteki mevcut yanıtları yoksayar. -
ManualStatusHandling
: Bu değerin liste olarak belirtilmesi, yanıtı bu durum kodlarından birine sahip http istekleri için yerleşik işlemeyi engeller. -
RelativePath
: Bu değerin metin olarak belirtilmesi, isteği yapmadan önce temel URL'ye ekler. -
Content
: Bu değerin belirtilmesi, seçeneğin değerini POST'un içeriği olarak kullanarak GET'den POST'a web isteğini değiştirir.
HTTP isteği GET (İçerik belirtilmediğinde) veya POST (İçerik olduğunda) olarak yapılır. POST istekleri yalnızca anonim olarak yapılabilir.
HTTP yanıtının üst bilgileri ikili sonuç üzerinde meta veri olarak kullanılabilir. Özel veri bağlayıcısı bağlamı dışında, yanıt üst bilgilerinin yalnızca bir alt kümesi kullanılabilir (güvenlik nedeniyle).
RelativePath
ve Query
seçeneklerini kullanarak "https://bing.com/search?q=Power+Query"
içeriğini alın. Bu seçenekler statik bir temel URL'yi dinamik olarak sorgulamak için kullanılabilir.
Kullanım
let
searchText = "Power Query"
in
Web.Contents(
"https://www.bing.com",
[
RelativePath = "search",
Query = [q = searchText]
]
)
çıkış
binary
İkili bir JSON yükü geçirerek ve yanıtı JSON olarak ayrıştırarak bir URL'ye POST isteği yapın.
Kullanım
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
Çıkış
table
Sorgu dizesinin bir parçası olarak kimlik doğrulama anahtarını kabul eden güvenli bir URL'ye bağlanın. Gizli anahtarı M'de sabit kodlamak yerine (güvenlik riski oluşturur), anahtar M'de adını (değerini değil) belirterek, Web API kimlik doğrulamasını seçerek ve Anahtar değerini Web API'sinin kimlik bilgilerinin bir parçası olarak girerek güvenli bir şekilde sağlanabilir. Bu şekilde kullanıldığında, aşağıdaki örnek "https://contoso.com/api/customers/get?api_key=******"
için bir istek oluşturur.
Kullanım
Web.Contents("https://contoso.com/api/customers/get", [ApiKeyName="api_key"])
Çıkış
binary
Özel bağlayıcılarda