訓練
模組
Access REST services from within Dynamics 365 Business Central - Training
Learn how to use HTTP data types, connect to external REST services, and handle JSON data in Dynamics 365 Business Central.
Web.Contents(url as text, optional options as nullable record) as binary
將從 url
下載的內容作為二進位傳回。 可提供選擇性記錄參數 options
來指定其他屬性。 記錄可包含下列欄位:
Query
:以程式設計方式將查詢參數新增至 URL,而不必擔心逸出。ApiKeyName
:若目標網站有 API 金鑰標記法,則此參數可以用來指定必須在 URL 中使用的金鑰參數名稱 (而非值)。 實際的金鑰值會在認證中提供。Headers
:將此值指定為記錄,會為 HTTP 要求提供額外的標頭。Timeout
:將此值指定為期間,會變更 HTTP 要求的逾時。 預設值為 100 秒。ExcludedFromCacheKey
:將此值指定為清單,會在計算快取資料時排除這些 HTTP 標頭金鑰。IsRetry
: 將此邏輯值指定為 true,會在擷取資料時忽略快取中的任何現有回應。ManualStatusHandling
: 將此值指定為清單,會阻止針對回應包含其中任何一個狀態代碼的 HTTP 要求進行任何內建處理。RelativePath
: 將此值指定為文字,會先將該文字附加到基底 URL,再提出要求。Content
:指定此值會將 Web 要求從 GET 變更為 POST,並使用選項值作為 POST 的內容。HTTP 要求會以 GET (未指定任何內容時) 或 POST (有內容時) 的形式提出。 POST 要求只能匿名提出。
HTTP 回應的標頭可作為二進位結果的中繼資料。 在自訂資料連線器內容之外,只有回應標頭的子集可用 (基於安全性考慮)。
使用 "https://bing.com/search?q=Power+Query"
和 RelativePath
選項擷取 Query
的內容。 這些選項可用來動態查詢靜態基底 URL。
使用方式
let
searchText = "Power Query"
in
Web.Contents(
"https://www.bing.com",
[
RelativePath = "search",
Query = [q = searchText]
]
)
輸出
binary
針對 URL 執行張貼,傳遞二進位 JSON 承載並將回應剖析為 JSON。
使用方式
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
輸出
table
連線到可接受驗證金鑰做為其查詢字串一部分的安全 URL。 在 M 中指定秘密金鑰的名稱 (而非其值),選擇 Web API 驗證,並在 Web API 認證中輸入金鑰值,即可安全地提供金鑰,而不是在 M 中將秘密金鑰進行硬式編碼 (可能會造成安全性風險)。 以這種方式使用時,下列範例會產生對 "https://contoso.com/api/customers/get?api_key=******"
的要求。
使用方式
Web.Contents("https://contoso.com/api/customers/get", [ApiKeyName="api_key"])
輸出
binary
訓練
模組
Access REST services from within Dynamics 365 Business Central - Training
Learn how to use HTTP data types, connect to external REST services, and handle JSON data in Dynamics 365 Business Central.