我對定義API的REST URI的最佳方式有疑問。將兩個不同參數傳遞給REST API的最佳解決方案是什麼?
我有一個提供商品細節的API。
所以我知道我可以做一個GET要求是這樣的:
http://XXX.YYY.ZZZ.TTT:8280/commodity_details/1
其中commodity_details是我想獲得(商品詳細信息)和什麼的的ID特定商品。這應該是一個適當的REST URI。
好吧,我知道,我也可以通過ID參數爲JSON文件doint一個POST要求是這樣的:
http://XXX.YYY.ZZZ.TTT:8280/commodity_details/
和attacching一個JSON有效載荷像這樣我的POST要求:
{
"commodity_id": 1
}
我想,如果我有一個commodity_id參數也許是更好的第一個版本(把所需的ID到URI中),是嗎?
但是如果我需要第二個language_id參數會發生什麼? (我的API應該也收到此LANGUAGE_ID參數,因此它可以提供適當的語言的internazionalized輸出。
因此,在這種情況下,我需要通過2個參數(commodity_id和LANGUAGE_ID)。
在這種情況下最好使用POST請求用JSON的有效載荷,其中包含兩個參數事情是這樣的:?
{
"commodity_id": 1,
"language_id": 2
}
或者對於這種情況可能是一個很好的URI模板?
不要滾你自己 - ['接受-Language'(https://開頭developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Accept-Language)。通常,對於您在URL中仍然需要的橫切關注點,您可以使用[查詢字符串](https://en.wikipedia.org/wiki/Query_string) - '/ commodity_details/1?language = 2' – jonrsharpe
使用é執行RESTful API的參數並不可靠? 接受語言怎麼樣?它是否可以設置爲選擇想要的語言? – AndreaNobili
1.什麼? 2.我提供了MDN的鏈接,你讀過了嗎? – jonrsharpe