请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

请问如何在HATEOAS 使用 query string ?

如何让客户端知道 query string 的参数名字和参数数量分别是什么?
另外,如是POST request , 请问如何用HATEOAS告诉客户端调用时request body的格式 是什么?
thx

正在回答 回答被采纳积分+3

1回答

阿莱克斯刘 2020-09-10 08:24:30

这个问题很有水平,也挺难回答。首先,我想到的是如何用最少的代码来生成query string和request body的格式的,同时不要over-engineering,但是一直也没能找到让我自己满意的答案。如果使用笨一点的方法,我们可以创建一个新的api,通过反射机制,把所有的query string从dto中映射出去。

但是这个做法感觉有点蠢,我会持续关注这个问题,找一个更靠谱的答案。

0 回复 有任何疑惑可以回复我~
  • 提问者 scandinavian #1
    好的谢谢。
    btw,我想当GET request 的query string 太长参数太多的时候, 用request body 来封装一下这样可以strong type 而且request url 不会太长。 但是一旦用了request body 就把GET变了POST 。 这时候本身查询数据的一个GET请求变了POST , 这就违反了RESTful 规范。 请问有没有两全其美的方法? aka 既可以GET 良好封装也符合RESTful 规范? 
    (FYI: 我参考了这个https://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#define-operations-in-terms-of-http-methods 但没提到。 )
    回复 有任何疑惑可以回复我~ 2020-09-10 08:57:31
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信