[請益] 所以,到底什麼是RESTful API?

看板Soft_Job作者 (LawTea)時間5年前 (2019/03/11 12:33), 5年前編輯推噓19(21235)
留言58則, 33人參與, 5年前最新討論串1/8 (看更多)
因為Web_Design板滿冷清的所以來這邊問 若不適當請告知 小弟不是Web領域的, 但也難免會碰到相關的東西 常聽到寫Web App的人會講到這個名詞 但查了一下資訊卻還是摸不著頭緒 估狗RESTful API 大概都是講到一下幾點 1.資源要用URL表示 這不是本來就這樣的嗎? 還是指別濫用query string? 關於query string與RESTful實在眾說紛紜, 查了很久也找不到令人信服的答案 2.Server要回傳對應的Http Status Code 這不是也本來就這樣的嗎? 3.用GET/POST/PUT等動詞表達對資源的操作 意思是說, 本來只有GET/POST用法, 但其實還有PUT/PATCH/DELETE等等 應該要善加利用這些動詞把操作分得更清楚? 4.Stateless 這也很常看到,但Http不是本來就Stateless的嗎? 要記錄state一般不都借助於session和cookie? 還是不RESTful的Api會有某種state? 5.資源傳遞的格式 這部分似乎不在RESTful的範圍,可以是json也可以是XML 有Web領域的前輩可以指點一下嗎? RESTful真的很神秘, 問身邊的人每個認為的重點都不太一樣 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.227.45.150 ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1552278838.A.078.html

03/11 12:35, 5年前 , 1F
根據那八個動詞要什麼給你什麼
03/11 12:35, 1F

03/11 12:44, 5年前 , 2F
一種寫法
03/11 12:44, 2F

03/11 12:44, 5年前 , 3F
03/11 12:44, 3F
我的問題主要是,這些東西不是Http本來就有的嗎? 還是RESTful的重點就是不要做Http規範以外的行為? ※ 編輯: thefattiger (125.227.45.150), 03/11/2019 12:49:14

03/11 13:01, 5年前 , 4F
就當作一種寫法讓api更清楚簡潔吧O.O
03/11 13:01, 4F

03/11 13:05, 5年前 , 5F
好寫易懂易串接
03/11 13:05, 5F

03/11 13:05, 5年前 , 6F
本來就要 然後咧 ? 要叫做什麼
03/11 13:05, 6F

03/11 13:06, 5年前 , 7F
成功的人本來就會比較容易受到注意,那幹嘛還出一個名
03/11 13:06, 7F

03/11 13:06, 5年前 , 8F
詞叫做生存者偏差
03/11 13:06, 8F

03/11 13:06, 5年前 , 9F
年輕人太多吧。古早時代的web URL或Http methods , 還真的
03/11 13:06, 9F

03/11 13:06, 5年前 , 10F
是大家亂用一通。
03/11 13:06, 10F

03/11 13:11, 5年前 , 11F
你的google是不是壞掉了?
03/11 13:11, 11F

03/11 13:16, 5年前 , 12F
RESTful 只是一種規定,讓原本大家天花亂墜的設計有一個最
03/11 13:16, 12F

03/11 13:16, 5年前 , 13F
基本可依循的規則。沒有什麼新技術是沒錯
03/11 13:16, 13F

03/11 13:17, 5年前 , 14F
上古時代是 http://網址/五四三?qwhat=我想幹嘛就幹嘛
03/11 13:17, 14F

03/11 13:17, 5年前 , 15F
舉個例子,有人用 get 去刪除資料
03/11 13:17, 15F
所以推廣RESTful的用意是讓是基於Http的api回歸到應有的樣子 這樣我就能理解了,感謝各位 不然一直google只看到一些Http的東西, 也不知道重點是啥 ※ 編輯: thefattiger (125.227.45.150), 03/11/2019 13:24:12

03/11 13:23, 5年前 , 16F
就是面試官喜歡的,真心不騙,kernel裡面一堆get也沒人敢噓
03/11 13:23, 16F

03/11 13:23, 5年前 , 17F
Linus
03/11 13:23, 17F

03/11 14:02, 5年前 , 18F
假設東西找不到,你的回應是什麼?你沒權限要求這東西,
03/11 14:02, 18F

03/11 14:02, 5年前 , 19F
又要回應什麼?要CRUD某個資源,你URL名字要怎麼設計?
03/11 14:02, 19F

03/11 14:05, 5年前 , 20F
沒去讀restful規範只會設計出一堆奇怪api,你以為RESTFUL
03/11 14:05, 20F

03/11 14:05, 5年前 , 21F
其實一點也不RESTFUL
03/11 14:05, 21F

03/11 14:09, 5年前 , 22F
你去比較SOAP和RESTful差別就好了
03/11 14:09, 22F

03/11 14:29, 5年前 , 23F
你發現精要了,restful就是隨個人喜好實現
03/11 14:29, 23F

03/11 14:30, 5年前 , 24F
你就算從來不知道RESTful這個字, 設計出的API也差不多這
03/11 14:30, 24F

03/11 14:32, 5年前 , 25F
個樣子. 但是HTTP API這個詞太不潮了, 於是就有一個人把
03/11 14:32, 25F

03/11 14:33, 5年前 , 26F
一些慣例或小技巧稱之為REST. 就像design pattern一樣.
03/11 14:33, 26F

03/11 14:37, 5年前 , 27F
推B大見解
03/11 14:37, 27F

03/11 14:49, 5年前 , 28F
推這篇與B大解釋 我一開始看restful也是滿頭問號
03/11 14:49, 28F

03/11 14:50, 5年前 , 29F
不就跟HTTP API一樣的東西嗎XD
03/11 14:50, 29F

03/11 14:52, 5年前 , 30F
你可以跟GraphQL 比較就知道蠻多點不是「本來就這樣」
03/11 14:52, 30F

03/11 15:03, 5年前 , 31F
03/11 15:03, 31F

03/11 15:03, 5年前 , 32F
裡頭有一篇講 ROA 架構的,根基就是 ReSTful
03/11 15:03, 32F

03/11 15:04, 5年前 , 33F
建議先讀看看,只是翻譯不太通順,我看了兩三遍,還看了
03/11 15:04, 33F

03/11 15:04, 5年前 , 34F
原文作者其他文章才釐清楚原作者要表達的是什麼
03/11 15:04, 34F

03/11 15:26, 5年前 , 35F
其實原po講的那些 "理所當然"的東西 很多就是restfu
03/11 15:26, 35F

03/11 15:26, 5年前 , 36F
規定的
03/11 15:26, 36F

03/11 16:32, 5年前 , 37F
因為只講API人家不一定知道你是指SOAP還是REST吧
03/11 16:32, 37F

03/11 16:38, 5年前 , 38F
用過SOAP就知道肥皂很難撿…QQ
03/11 16:38, 38F

03/11 17:01, 5年前 , 39F
就像Coding style的一個東西
03/11 17:01, 39F

03/11 17:44, 5年前 , 40F
你覺得很理所當然的東西是因為現今大家都照這個風格寫AP
03/11 17:44, 40F

03/11 17:44, 5年前 , 41F
I
03/11 17:44, 41F

03/11 18:07, 5年前 , 42F
03/11 18:07, 42F

03/11 19:31, 5年前 , 43F
推個
03/11 19:31, 43F

03/11 19:51, 5年前 , 44F
03/11 19:51, 44F

03/11 19:51, 5年前 , 45F
03/11 19:51, 45F

03/11 19:52, 5年前 , 46F
其實就用graphql好了。要寫對restful要花一點時間。
03/11 19:52, 46F

03/11 19:52, 5年前 , 47F
GET 刪除 GET 登入 天rrr
03/11 19:52, 47F

03/11 20:08, 5年前 , 48F
沒有本來就這樣啊,以前接別人device api,一個GET打
03/11 20:08, 48F

03/11 20:08, 5年前 , 49F
天下呢
03/11 20:08, 49F

03/11 22:19, 5年前 , 50F
restful 不是規定,是概念和風格,第一點 url 資源的概念
03/11 22:19, 50F

03/11 22:19, 5年前 , 51F
,並沒有本來就這樣,隨便找都是群魔亂舞的命名
03/11 22:19, 51F

03/11 22:49, 5年前 , 52F
HTTP standard有定,可是沒多少人會去把HTTP standard看完呀
03/11 22:49, 52F

03/11 23:10, 5年前 , 53F
http://bit.ly/2tZRoyP (小弟我之前寫的)
03/11 23:10, 53F

03/12 08:56, 5年前 , 54F
應該說很多人都把RESTful當成單純的反射性API在用
03/12 08:56, 54F

03/12 18:50, 5年前 , 55F
推個 找google完我也是想問 阿不就這樣..
03/12 18:50, 55F

03/12 19:39, 5年前 , 56F
推肥皂真的很難撿,會撿到翻臉
03/12 19:39, 56F

03/12 19:49, 5年前 , 57F
一個抽象 需要被實現
03/12 19:49, 57F

03/13 14:46, 5年前 , 58F
就另一種架構而已
03/13 14:46, 58F
文章代碼(AID): #1SXUKs1u (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1SXUKs1u (Soft_Job)