Der*_*Dev 3 api rest boolean endpoint
翻转RESTful API上的布尔值的正确方法是什么?
例如,考虑一个users/toggle_middle_name
端点。默认情况下,每个用户都不会显示其中间名,除非他们通过点击端点来选择加入。
显然,这不是GET
端点,因为您将信息写入数据库。但是,在一项PATCH/PUT
请求中,我的一般理解是,应该发送参数,表示要设置的数据。因此,例如,将发送{show_middle_name: true}
。但是由于这只是在服务器端进行翻转的布尔值,因此理想情况下,您不需要知道是发送true
还是false
在调用之前。只需点击端点,它就会从一个端点翻转到另一个端点,而不会发送任何值。
问题就变成了,可以直接击一个不带参数的PUT
/ PATCH
端点,然后在响应中简单地返回结果吗?还是不鼓励无参数/ API调用?为什么或者为什么不?PUT
PATCH
简单地说:不要
我认为应该没有专门的资源来翻转布尔值,因为布尔值本身并不定义一个自包含的实体。
相反,我将其设为的一个属性User
并PATCH
对其/users/john_doe
进行处理
{
"show_middle_name": true/false
}
Run Code Online (Sandbox Code Playgroud)
正如jonrsharpe的评论一样。
归档时间: |
|
查看次数: |
1204 次 |
最近记录: |