首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >REST签名指南

REST签名指南
EN

Stack Overflow用户
提问于 2022-06-09 13:14:25
回答 2查看 51关注 0票数 0

寻求关于API的REST签名的指导。

为了处理物流,我们希望支持快递包装的运输标签的生成。

其中哪一种更适合于RESTFul来建模这些API。

生成标签API:POST /package/{package-id}/label

重新生成标签API:POST /package/{package-id}/label/regenerate

生成标签API:POST /package/{package-id}/label?operation=generate

重新生成标签API:POST /package/{package-id}/label?operation=regenerate

重新生成API将根据更新的发货日期等为包创建一个新的标签,这些标签作为请求有效负载的一部分传递。

EN

回答 2

Stack Overflow用户

发布于 2022-06-09 15:30:57

只需使用:

代码语言:javascript
复制
POST /package/{package-id}/label
PUT/PATCH /package/{package-id}/label

https://restfulapi.net/http-methods/

票数 0
EN

Stack Overflow用户

发布于 2022-06-09 18:47:40

如果/package/{package-id}/label是您正在创建的“标签资源”,那么适当的方法可能是PUT

但是“再生”在这里有点难解释。您能否一次又一次地通过在GET上执行/package/{package-id}/label请求来获取标签。

如果“创建标签”或“重新生成标签”没有副作用(例如打印标签的物理打印机),那么GET可能工作得最好。

如果“创建标签”或“重新生成标签”并不是真正返回标签,而是在不同的系统中造成某种外部影响,那么这样做更像您提到的RPC调用更好。

代码语言:javascript
复制
POST /package/{package-id}/label

那么我的问题是,为什么‘产生’和‘再生’之间有区别。听起来你只是做了两次同样的事。你真的需要两个端点吗?系统不能确定之前是否为{package-id}创建了标签

如果系统不知道标签是生成的还是再生的,而且只有客户端可以知道我倾向于使用同一个端点并向请求体添加一些标志,而不是有两个不同的URLS。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72560939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档