我的情况是我需要我的API来调用触发服务端事件,客户端不需要信息(除了身份验证),服务器也不需要返回任何信息。由于这不适合标准的CRUD /资源交互,我应该把它作为一个指示我做错了什么,还是有一个RESTful设计模式来处理这些条件?
答案 0 :(得分:9)
您的客户可以:
POST /trigger
服务器将以202 Accepted
回复。
这样,您的请求仍然可以包含相应的身份验证标头,如果您需要客户端提供实体,或者需要返回包含有关如何查询事件状态的信息的响应,则可以在将来扩展API。
关于你在这里尝试做什么,没有什么“非RESTful”; REST原则不必与资源上的CRUD操作相关联。
通过此回复返回的实体应该包括指示 请求的当前状态和指向状态监视器的指针 或某些用户可以预期请求的估计 满足。
鉴于定义中的“SHOULD”,您没有义务在回复中发送任何内容。
答案 1 :(得分:0)
REST定义了客户端和服务器之间通信的本质。在这种情况下,我认为问题是没有信息要转移。
客户是否需要启动此功能?我说你的服务器端事件应该完全自包含在服务器中。或许可以通过cron电话定期开始吗?