2017-09-18 43 views
0

經過一段時間與Restful APIs的工作,我想知道更多關於他們的內部功能。API從哪裏獲得他們的信息

我想簡單解釋一下API如何訪問他們提供的數據作爲對我們請求的響應。

有APIs,例如天氣API或體育APIs能夠提供最近的數據(如運動結果)的反應,我想知道他們在哪裏或如何得到更新的信息幾乎只要它可用。

我在這裏看到SO問題的答案指向API設計教程,但不是針對這個特定的主題。

回答

1

對於某些信息資源,API通常只是一個外觀(或者您喜歡的界面)。其背後的想法是「隱藏」用戶的任何複雜性,將多個服務統一到單個接入點,甚至隱藏實際服務實施的細節。

這就是說,你現在可能已經明白,「API從哪裏獲取信息?」這個問題不能有一個確定的答案。但是,一些常見的答案是:

  • 一些專有/內部開發的服務/數據庫
  • 對於體育的API

    • 其他API - 也許他們正在被一些運動提供媒體,他們一出來就有結果,所以他們只需將它們輸入到他們的數據庫中,並立即通過他們的API獲得。 對於天氣預報 - 與運動API一樣,它們可能由一家處理天氣預報的公司提供。

      如果對您來說比較容易,您可以將「只讀」API以某種方式作爲RSS提供。 我希望這能爲你解決一些問題。

    +0

    感謝尼古拉,是的,我認爲這回答了我對內部功能的主要關注! – codeKiller

    1

    你可以看看Stack Share看看公司用於數據庫和什麼的。但是沒有一個普遍的答案,每個公司都使用他們的任何作品。

    這通常意味着te公司有其自己的數據庫存儲數據。但他們也可能從另一家公司獲得他們的數據。

    但是'數據庫'不只是SQL,也許他們使用非結構化數據或任何其他選項來存儲數據。

    這就是「無論作品」來自何處。公司選擇最適合其需求的解決方案。

    +0

    當你說「每家公司都使用他們的任何作品」時,你的意思是說,在故事結尾,API使用公司的數據庫?還是他們用來獲取稍後在我們的API請求中提供的數據的任何其他資源/服務? – codeKiller