WordPress REST API:它是什麼以及如何開始使用它

如果您在過去幾年中在WordPress社區中度過了任何時間,那麼您很有可能聽說過對新REST API的參考。但是,除非您是經驗豐富的開發人員,否則您可能不知道WordPress REST API的實際含義。

儘管技術細節有些複雜,但是此功能背後的基本概念很容易掌握。新的API有助於擴展WordPress作為平台的功能。而且,REST API使開發人員將WordPress與其他站點和應用程序連接起來比以往更加簡單。

wordpress-rest-api

#WordPress #REST API:它是什麼以及如何開始使用它
點擊鳴叫 

 

在本綜合指南中,我們將引導您完成所有需要了解的基礎知識。我們將解釋一般的API,特別是REST API(以及WordPress特定版本)。然後,我們將討論如何自己開始使用WordPress REST API。讓我們跳進去吧!

應用程序編程介面(API)簡介

在我們專門研究REST API之前,讓我們先備份一下。要理解這個概念,關鍵是首先要了解一般的API。

在最基本的級別上,API(或應用程序編程介面)使兩個應用程序能夠相互通信。例如,當您訪問網站時,瀏覽器將請求發送到該網站所在的伺服器。該伺服器的API接收瀏覽器的請求,對其進行解釋,然後發送回所有顯示您的站點所需的數據。

當然,從技術角度來看,API的工作方式還有很多。但是,我們將專註於對您來說最重要的事情-實際應用。由於許多公司已經開始將API打包並將其提供為您可以使用的產品,因此API受到了越來越多的關注和可見性。

換句話說,像Google這樣的公司的開發人員將一起收集其應用程序代碼的某些部分,並將其公開發布。這樣,其他開發人員就可以使用API​​作為工具來幫助自己的網站連接到Google並利用其功能:

google-api-library

例如,您可以使用Google Maps API 在您的網站上放置功能齊全的地圖,該地圖將受益於Google的所有相關數據和功能。這使您不必編寫地圖並自己收集所有數據。這同樣適用於廣泛的站點和應用程序。

隨著網站及其所依賴的功能變得越來越複雜,諸如API之類的工具變得至關重要。它們使開發人員可以利用現有功能,從而可以簡單地將新功能「插入」到您的網站中。反過來,擁有API的站點會從增加的展示次數和流量中受益。

REST(代表性狀態轉移)API的基本規則

有多種創建API的方法。一個REST(表述性狀態轉移)API是下面的具體規則開發的特殊類型。換句話說,REST提供了一組開發人員在構建API時可以使用的準則。這樣可以確保API有效運行。

因此,要了解REST API的工作原理,您需要知道它們遵循的規則(或「約束」)。使API成為RESTful的五個基本元素。請記住,「伺服器」是API所屬的平台,「客戶端」是連接到該平台的站點,應用程序或軟體:

RESTful-2
  1. 客戶端-伺服器體系結構。應當構建API,以便客戶端和伺服器保持彼此獨立。這樣,他們就可以繼續自己發展,並且可以獨立使用。
  2. 無國籍狀態。REST API必須遵循「無狀態」協議。換句話說,他們無法在伺服器上存儲有關客戶端的任何信息。客戶的請求應包括所有必要的前期數據,響應應提供客戶所需的一切。這使每次交互成為「一勞永逸」的交易,並減少了內存需求和潛在的錯誤。
  3. 可緩存性。 「緩存」是特定數據的臨時存儲,因此可以更快地檢索和發送。RESTful API儘可能使用可緩存的數據,以提高速度和效率。另外,API需要讓客戶端知道每條數據是否可以並且應該被緩存
  4. 分層系統。精心設計的REST API是使用層構建的,每個層都有其自己的指定功能。這些層相互作用,但保持分離。這使API易於隨時間進行修改和更新,並提高了其安全性
  5. 統一的界面。REST API的所有部分都需要通過相同的介面運行,並使用相同的語言進行通信。該介面應專門為API設計,並能夠自行發展。它不應依賴於伺服器或客戶端來起作用。

遵循這些原則的任何API都可以視為RESTful。有也第六約束,被稱為「按需代碼」。當遵循該技術時,該技術可使API指示伺服器將代碼傳輸給客戶端,以擴展其功能。但是,此約束是可選的,並非所有REST API都採用。

WordPress REST API

在這一點上,您可能想知道所有這些因素如何影響您。API是出色的工具,但是它們與您的日常工作相關嗎?如果您是WordPress用戶,答案肯定是「是」。

WordPress REST API已經開發了兩年了。相當長一段時間以來,它都是作為一個獨立的插件進行開發的,開發人員可以隨著時間的推移為之做出貢獻,任何人都可以嘗試使用。

實際上,REST API插件有兩個單獨的版本。該API的元素早在更新4.4中就已添加到核心平台中。然後是WordPress 4.7(2016年)完全集成。這意味著,今天,WordPress具有自己的功能齊全的REST API。

平台為什麼要採取這一舉措?根據項目站點本身,這是因為WordPress正朝著成為「成熟的應用程序框架」邁進。換句話說,REST API使平台可以與幾乎任何站點和Web應用程序進行交互。另外,無論外部程序使用哪種語言,它都可以通信和交換數據。

rest-api

為開發人員打開了許多可能性。它還使WordPress作為一個比以往更靈活,更通用的平台。正如Barn2 Media的運營總監Katie Keith 所說:

通過了解REST API,WordPress開發人員可以選擇最有效的方式來執行每個任務,而不必局限於特定的技術或平台,例如PHP或WordPress後端。REST API得到有效利用,使第三方集成更加容易……它甚至帶來了新的機遇,例如創建自己的基於WordPress的移動應用程序,或探索與WordPress進行通信的獨特新方法。

同樣重要的是要注意,您可能會聽到有時稱為WordPress JSON REST API的此功能。「 JSON」部分代表JavaScript對象表示法,描述了此API用來交換數據的格式。該格式基於JavaScript,並且由於與許多常見編程語言的良好介面而成為開發API的一種流行方式。換句話說,JSON API能夠更輕鬆地促進利用不同語言的應用程序之間的通信。

WordPress REST API請求的剖析

您現在應該了解WordPress REST API的總體目的和方向。因此,讓我們詳細介紹一下它是如何工作的。如果您想動手操作並自己開始嘗試API,則需要了解一些基本概念。

如前所述,每個API都會處理請求並返迴響應。換句話說,客戶端要求其執行特定操作,然後API會執行該操作。API的確切執行方式可能有所不同。REST API是專門設計用來使用簡單的HTML命令(或「方法」)來接收和響應特定類型的請求的。

為了說明這一點,下面是客戶端可以發送的最基本和最重要的HTML方法:

HTML-methods-1
  • GET:此命令從伺服器檢索資源(例如特定數據)。
  • POST:這樣,客戶端將資源添加到伺服器。
  • PUT:您可以使用它來編輯或更新伺服器上已經存在的資源。
  • 刪除:顧名思義,這將從伺服器中刪除資源。

客戶端將與這些命令一起發送一條或多條線,以準確傳達所需的資源以及應使用的資源。例如,將PHP文件上傳到伺服器上特定文件夾的請求可能如下所示:

POST /foldername/my_file.php

/foldername/my_file.php部分被稱為「路線」,因為它告訴API去哪裡,什麼樣的數據與互動。當您將其與HTTP方法(在這種情況下為POST)結合使用時,整個功能稱為「端點」。

大多數REST API和與其交互的客戶端要比這複雜得多-包括WordPress版本。但是,這些基本元素構成了WordPress REST API如何工作的基礎。

如何開始使用WordPress REST API

只要您建立了WordPress網站,就可以立即開始嘗試REST API。您只需執行瀏覽器即可執行各種GET請求以直接檢索數據。

要訪問WordPress REST API,您需要從以下路徑開始:

yoursite.com/wp-json/wp/v2

然後,您可以添加到該URL上以訪問各種類型的數據。例如,您可以通過以下路徑查找特定的用戶個人資料:

yoursite.com/wp-json/wp/v2/users/4567

在這種情況下,「 4567」是您要查看的配置文件的唯一用戶ID。如果您省略了該ID,則會看到您網站上所有用戶的列表:

rest-api-user-list

您可以使用相同的基本路線來查看其他類型的數據,例如帖子或頁面。您甚至可以搜索符合特定條件的數據子集。例如,您可以使用以下URL檢索包含特定術語的所有帖子:

yoursite.com/wp-json/wp/v2/posts?=search [關鍵字]

當然,這只是一個簡單的例子。使用WordPress REST API可以實際執行的操作幾乎沒有限制。如果您想了解有關其工作原理的更多信息,建議從以下資源開始:

  • REST API手冊這是官方的WordPress資源,記錄了有關REST API的各種信息。除其他事項外,您將找到可以使用的端點列表,以及在此未涉及的REST API的某些結構方面的詳細信息。
  • W3Schools教程儘管此資源不是特定於REST API的,但它提供了方便的教程,可以幫助您熟悉關鍵概念,例如 HTTP方法 JSON
  • WordPress REST API終極指南。 這本來自WP Engine的免費電子書包含許多實用信息和示例。另外,它將引導您完成一些基本(以及更高級)的任務。
  • 在此期間,還請查看WordPress開發人員十大插件列表。在您探索REST API的世界時,它們一定會派上用場。

WordPress REST API無疑是一個複雜的話題。但是,即使對於非開發人員,也有必要了解該技術如何工作以及如何實現的基礎知識。而且,它甚至可以使您自己開始涉足開發!

到頂部

結論

沒有比現在更好的時間來學習WordPress REST API。由於已完全合併到WordPress核心中,因此它將在平台的未來中扮演重要角色。各行各業的開發人員將使用此API以以前難以或不可能的方式將WordPress連接到更廣泛的網路。

自己理解這個概念可能會有些挑戰。但是,從根本上講,這些概念很容易掌握。REST API是一個介面,使兩個程序可以彼此「交談」,並且是根據確保其靈活,可擴展和安全的準則創建的。如果您想更深入地研究所有這些工作原理以及如何使用它們,那麼這裡有很多有用的資源,例如官方手冊

相關文章