考虑到 REST,将 HTTP 方法映射到 CRUD 操作相对容易:POST 用于创建、GET 用于读取等。但是“即发即忘”操作又如何呢?哪种 HTTP 方法最能代表“即发即忘”操作,例如触发批处理作业(其中不会向调用方发送任何响应)?
我会想到 POST,但我认为 GET 也是一种合适的方法,因为 99% 的情况下,您只为这些类型的操作提供一堆参数。你怎么认为?
我会想到 POST,但我认为 GET 是更合适的方法,因为 99% 的情况下,您只为这些类型的操作提供一堆参数。你怎么认为?
外部状态
我认为你使用的参数数量与你使用的动词无关。关键问题是你是否改变了外部可见的状态?
批处理作业资源
在您的示例中,如果批处理作业不影响任何对象的外部可见状态,那么您可以将其实现为批处理作业。但是,您可以将批处理作业建模为具有关联资源容器的资源。
您可以使用 Post 创建新的 BatchJob 资源,并允许用户执行 GET 来查看迄今为止作业的进度。您可以对资源容器执行 GET 操作来列出所有正在运行的批处理作业,也可以调用 DELETE 来终止其中一个作业。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)