理解RESTful架構

2021-07-11 07:55:36 字數 1083 閱讀 3250

理解restful架構

restful的精闢理解:

看url就知道要什麼

看http method就知道幹什麼

看http status code就知道結果如何

rest不是」rest」這個單詞,而是幾個單詞縮寫。但即使那幾個單詞說出來,也無法理解在說什麼 -_-!! (不是要貶低人,是我自己也理解困難);

rest描述的是在網路中client和server的一種互動形式;rest本身不實用,實用的是如何設計 restful api(rest風格的網路介面);

server提供的restful api中,url中只使用名詞來指定資源,原則上不使用動詞。「資源」是rest架構或者說整個網路處理的核心。比如:

獲取某人的新鮮;

獲取某人的好友列表;

獲取某人的詳細資訊;3. 用http協議裡的動詞來實現資源的新增,修改,刪除等操作。即通過http動詞來實現資源的狀態扭**

get 用來獲取資源,

post 用來新建資源(也可以用於更新資源),

put 用來更新資源,

delete 用來刪除資源。比如:

delete 刪除某人的好友 (在http parameter指定好友id)

post 新增好友

update 更新個人資料

禁止使用: get 圖例:

server和client之間傳遞某資源的乙個表現形式,比如用json,xml傳輸文字,或者用jpg,webp傳輸等。當然還可以壓縮http傳輸時的資料(on-wire data compression)。

用 http status code傳遞server的狀態資訊。比如最常用的 200 表示成功,500 表示server內部錯誤等。

主要資訊就這麼點。最後是要解放思想,web端不再用之前典型的php或jsp架構,而是改為前段渲染和附帶處理簡單的商務邏輯(比如angularjs或者backbone的一些樣例)。web端和server只使用上述定義的api來傳遞資料和改變資料狀態。格式一般是json。ios和android同理可得。由此可見,web,ios,android和第三方開發者變為平等的角色通過一套api來共同消費server提供的服務。

理解RESTful架構

1.面向資源是rest最明顯的特徵,即將伺服器上所有提供的事物都抽象成資源 而且每一種資源都是有狀態的。這裡引出了 資源及其狀態 的概念。2.除了設計資源本身,還需設計資源之間的關聯關係,並且通過超連結 在表現層時 才將資源關聯起來。這裡引出了 超文字驅動 3.伺服器的資源通過語義化的api及一組有...

理解RESTful架構

越來越多的人開始意識到,即軟體,而且是一種新型的軟體。這種 網際網路軟體 採用客戶端 伺服器模式,建立在分布式體系上,通過網際網路通訊,具有高延時 high latency 高併發等特點。開發,完全可以採用軟體開發的模式。但是傳統上,軟體和網路是兩個不同的領域,很少有交集 軟體開發主要針對單機環境,...

理解RESTful架構

越來越多的人開始意識到,即軟體,而且是一種新型的軟體。這種 網際網路軟體 採用客戶端 伺服器模式,建立在分布式體系上,通過網際網路通訊,具有高延時 high latency 高併發等特點。開發,完全可以採用軟體開發的模式。但是傳統上,軟體和網路是兩個不同的領域,很少有交集 軟體開發主要針對單機環境,...