簡體   English   中英

Azure 數據工廠 Web API 活動

[英]Azure Data Factory Web API activity

我們正在使用 Azure 數據工廠從 API 之一獲取天氣數據。 我們必須首先實現多個活動,我們需要一個包含所有緯度和經度數據的表,然后我們需要構建一個 Azure 管道來循環遍歷位置(坐標)並調用 API 以獲取天氣信息。 以下是我執行的步驟。

  1. 我正在使用查找活動從表中獲取數據。
  2. 然后我使用 Foreach 活動來循環遍歷緯度和經度。
  3. 我正在使用設置變量活動,其中一個變量用於緯度,一個變量用於經度。
  4. 我正在使用 web 活動來傳遞 URL 並從 API 獲取響應。

I am able to achieve most of the output but the issue where I am stuck is the output URL is not fetching any data because the for some part of my URL the hyperlink which is blue color is removed and is not able to read. 下面是屏幕截圖。

  1. 兩個活動 Lookup 和 foreach 聲明了四個變量

  2. 我的源數據集是一個 SQL 表,具有我想要的緯度和經度。

  3. 此活動顯示兩個設置變量和 web 和復制活動。

  4. 我添加了將傳遞到 web URL 的變量的名稱和值

  5. 下面是我通過天氣的文活動 API url

  6. 我通過 URL、鍵和緯度、經度變量、格式、天數的動態內容。

  7. 最終 output 如果您看到 URL 在緯度值(即 41.4)之后的超鏈接被刪除,那么我將面臨問題,因此之后沒有任何內容被讀取,並且數據沒有進入 Z0ECD11C1D7A2874018D148ABB3D1。 如何解決這個問題以及我們如何傳遞給 URL 中的變量,因為在我的情況下,緯度和經度用逗號分隔,如果我嘗試添加逗號,它不會讀取 URL

這是我試圖通過 Azure 數據工廠實現的最終 URL。

http://api.worldweatheronline.com/premium/v1/weather.ashx?key=*****************&q=41.14,80.68&format=JSON&num_of_days=5

查詢的 output 是什么。 Select 緯度,距離 Weather_location 多遠? 我認為那里的長期價值是-80,所以你遇到了問題。 這是我嘗試過的。

創建兩個變量 Long 和 lat 並設置您共享的值。 使用了下面的表達式。

@concat('http://api.worldweatheronline.com/premium/v1/weather.ashx?key=XXXXXX&q=',variables('lat')
,',',variables('long'),'&format=JSON&num_of_days=5')

它工作正常。

{
    "data": {
        "request": [
            {
                "type": "LatLon",
                "query": "Lat 41.14 and Lon 80.68"
            }
        ],
        "current_condition": [
            {
                "observation_time": "11:3

......

當您談到超鏈接時,您是對的,它沒有顯示為完整(請參見下面的屏幕截圖),但它仍然對我有用。

輸入 { "url": "http://api.worldweatheronline.com/premium/v1/weather.ashx?key=XXXXXX=41.14,80.68&format=JSON&num_of_days=5", "method": "GET", "headers" : {} }

在此處輸入圖像描述

1/15 編輯

據我了解,打算使用 API 並將響應 JSON 復制到 ADLE GEN 2。

這就是我嘗試時所做的。 Used the a copy activity select SINK as REST, base URL in the linked service was http://api.worldweatheronline.com .

創建一個新變量:relativeurl:

@concat('/premium/v1/weather.ashx?key=yourkey&q=',variables('lat')
,',',variables('long'),'&format=JSON&num_of_days=5')

我們將使用它作為 SOURCE 相關 url 中的參數。

GO to Copy Activity (CA) -> Source DS -> Open -> Parameter -> relativeurl

GO 復制活動 (CA) -> 源 -> 你應該看到 relativeurl ->@variables('relativeurl')

GO 復制活動 (CA) -> 源 DS -> 打開 -> 相對 URL -@dataset().relativeurl

在此處輸入圖像描述

HTH

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM