什么是RESTful呈现表单的方式?

时间:2010-08-17 15:46:58

标签: web-services rest

我理解RESTful网站设计应该如何运作,但在实施博客时无法确定呈现表单以插入新博客文章的最佳方式。 example.com/posts/create会合理吗?这感觉就像“创建”并不安宁,就像它将信息放入URI中一样,应该简单地用PUT / POST表示。

其他人会如何做到这一点?

3 个答案:

答案 0 :(得分:2)

请看一下Rails Routing的Rails视图。

Verb   URL            Controller  Action   Used For
GET    /photos/new    Photos      new      return an HTML form for creating a new photo
POST   /photos        Photos      create   create a new photo

因此,在您的情况下,请获取/posts/new以获取新的帖子表单,但发布/posts以创建新帖子。

关键是,你正在发布一篇新的博客文章,但为了做到这一点,你需要获取使你能够做到这一点的表格。在某种程度上,新的博客文章形式只是另一种(静态)资源。

答案 1 :(得分:2)

如果您不喜欢URL的感觉,请将其更改为:

GET http://example.com/posts/createform

答案 2 :(得分:0)

使用POST提交插入信息,然后让页面重定向到URL中的新ID。您不希望在URL上获得新信息,因为刷新URL的用户将发布两次。