gpt4 book ai didi

java - REST 中一些操作(动词)的命名约定

转载 作者:行者123 更新时间:2023-12-01 09:53:20 25 4
gpt4 key购买 nike

在设计 REST api 时,我尝试不使用动词,但努力将操作重新想象为资源(如 REST 中那样)

这里有一些

/guest/accountnumber/isValid/{username} (returns a Boolean by checking if account number is valid)
/user/associateAccount/{firstAcc}/{secondAcc} (returns a Boolean. Links up the two passed in accounts)

我真的不想故意遵循不好的做法并扼杀 REST 精神,但我正在努力重新将其视为资源状态传输,而不是禽类 XML RPC 样式操作或远程方法调用。如有任何帮助,我们将不胜感激!

最佳答案

boolean 值是否表示操作成功? HTTP 响应代码可用于此目的。

对于“关联帐户”,将关联本身想象为一个对象。这些对象可以想象为位于它们所引用的帐户下的“文件夹”中。

您可以让 PUT/accounts/{firstAcc}/associations/{secondAcc} 返回一个 HTTP 代码,指示帐户是否已成功关联(例如 201 Created409 冲突)。 DELETE/accounts/{firstAcc}/associations/{secondAcc} 可用于删除链接。

对于你的另一个例子,我不明白你到底想表达什么。只是检查帐户是否存在吗?为此,我将使用 HEAD/accounts/{number}。如果帐户有效,则返回 200;如果无效,则返回 404

关于java - REST 中一些操作(动词)的命名约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37446844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com