REST API欢迎电子邮件最佳实践

时间:2017-10-09 16:58:31

标签: rest api-design

我有一个带有POST端点的REST api,供用户注册。但是,我也想自动发送欢迎电子邮件,但我认为将此作为POST请求的副作用是不好的设计。到目前为止,我已经提出了三个选择:

  1. 让浏览器单独启动另一个端点 欢迎邮件发送。我不知道它会是什么 (GET / POST?)从那时起它效率低下且容易被滥用 必须再次发送电子邮件地址。
  2. 有一个可选的 " sendWelcomeEmail"请求正文中的字段。
  3. 与2相同,但在查询参数中。
  4. 也许这是主观的,但上述哪一项是最佳做法?我觉得他们中的任何一个都不能完全符合这个要求,所以欢迎任何其他建议。

1 个答案:

答案 0 :(得分:3)

让POST请求有副作用。

我认为这将是一个很好的最佳实践'。这里的假设是你有一个"用户"表示资源列表的资源。

通常,POST将用于'集合'用于在集合中创建新条目的资源。

这就像是:

POST /users
Content-Type: application/json

{
   "firstName": "foo",
   etc...
}

服务器在同一HTTP请求期间自动发送欢迎电子邮件完全没问题。没有必要为此创建第二个端点。

所以我的建议是有一个辅助HTTP请求。