我有一個 API 端點來檢索所有用戶。有 3 個查詢引數用于搜索/過濾結果,如下所示。
GET /users?name=test&age=23&area=abc
現在我想介紹一個在搜索name引數時忽略大小寫的選項。例如,即使名稱等于Test或,上述 API 呼叫也應該回傳tesT。
實施此選項的正確方法是什么?添加另一個查詢引數還是有更好的方法來實作它?
uj5u.com熱心網友回復:
在這種特定情況下,更簡單的選擇可能是將查詢引數值定義為正則運算式,因為正則運算式本身允許我們將字串定義為不區分大小寫/區分大小寫。
在其他情況下,另一種選擇是將規范(該值需要不區分大小寫)合并到查詢引數值本身中,例如
http://localhost:3000?name=case_insensitive(test)
uj5u.com熱心網友回復:
我會意識到name的兩個新引數,即:nameIgnoreCase和nameCaseSensitive。在這種情況下,端點的用戶可以而且必須做出決定。如果這是有據可查的,用戶會得到一個額外的提示,即這個“問題”根本就存在。您還可以繼續提供name作為默認行為,這將回退到 nameIgnoreCase或nameCaseSensitive。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/471486.html
下一篇:POST或GET用于觸發更新
