Rest 放置或发布带有日志附件的电子邮件表单

Rest 放置或发布带有日志附件的电子邮件表单,rest,web-applications,Rest,Web Applications,我正在使用Spring3编写一个RESTfulWebApp。该应用程序的一部分是一个表单,提交后会触发电子邮件的发送,并附上各种应用程序日志文件。我不确定是否应该将此表单提交作为“发布”或“发布”处理 我的问题是,从结构上看,该过程似乎是幂等的(因此是PUT的候选)-使用相同数据提交n次的相同请求将始终发送具有相同文本内容的电子邮件,并附加来自相同文件系统位置的相同文件 但是,每次执行请求时,所附文件的内容可能会有所不同 这些文件的内容是否超出了我在决定发布或发布时应该感兴趣的范围?我完全没有抓

我正在使用Spring3编写一个RESTfulWebApp。该应用程序的一部分是一个表单,提交后会触发电子邮件的发送,并附上各种应用程序日志文件。我不确定是否应该将此表单提交作为“发布”或“发布”处理

我的问题是,从结构上看,该过程似乎是幂等的(因此是PUT的候选)-使用相同数据提交n次的相同请求将始终发送具有相同文本内容的电子邮件,并附加来自相同文件系统位置的相同文件

但是,每次执行请求时,所附文件的内容可能会有所不同

这些文件的内容是否超出了我在决定发布或发布时应该感兴趣的范围?我完全没有抓住要点吗

任何想法都将不胜感激


非常感谢

我肯定会选择POST,因为每次发布数据时,都会发送/创建一封新的电子邮件。PUT主要用于编辑现有实体。

您是否可以在url上执行PUT操作以返回相同的资源?如果没有,则使用POST

服务器在请求后做什么并不重要。重要的是行为与客户保持一致。如果客户机放置一个资源,它希望以后能够获取它。如果让客户机执行POST,则客户机没有期望值,除非返回201,在这种情况下,它期望位置标头包含新创建的资源

如果你放两次邮件,就发送多封邮件的问题是有争议的。只要发送的电子邮件数量没有暴露给客户端,那么您就没有违反统一界面的行为。但是,系统中的其他人可能会因为接收到多个接口而感到困惑