我正在考虑使用 RailwayJS 来构建我的网络服务器。以前我用的是express,它被认为是RESTful。然而,从我一直在阅读的内容来看,RailwayJS 似乎不被认为是 RESTful,即使它使用 express!
RailwayJS 是什么使它不是 RESTful 的?如果它使用 JSON 传递消息,那它不是 RESTful 的吗?
我正在考虑使用 RailwayJS 来构建我的网络服务器。以前我用的是express,它被认为是RESTful。然而,从我一直在阅读的内容来看,RailwayJS 似乎不被认为是 RESTful,即使它使用 express!
RailwayJS 是什么使它不是 RESTful 的?如果它使用 JSON 传递消息,那它不是 RESTful 的吗?
我很好奇您在哪里和/或如何得出关于 REST 和 Express/RailwayJS 的结论?
Express 允许您以任何您希望的方式自由地设置您的路由器;你可以很容易地创建一个非常 RESTful 风格的应用程序,或者你可以很容易地打破 REST 架构中的每条规则。Express 不会对您发表任何意见。
然而,RailwayJS 似乎更喜欢 RESTful 风格的界面——至少,在与您在 Ruby on Rails 等相同的上下文中使用“REST”时。Railway 支持基于资源的路由,它将资源映射到七个非常类似于 Rails 的 URL/HTTP 动词:
基于资源的路由提供 HTTP 动词和控制器动作之间的标准映射:
map.resources('posts');
将提供以下路线:
helper | method | path | controller#action --------------------------------------------------------------- posts GET /posts posts#index posts POST /posts posts#create new_post GET /posts/new posts#new edit_post GET /posts/:id/edit posts#edit post DELETE /posts/:id posts#destroy post PUT /posts/:id posts#update post GET /posts/:id posts#show
因此,我的结论是,在大多数人在设计基于 MVC 的 Web 应用程序时使用“REST”时,Express可以是 RESTful 的,这取决于您如何设计应用程序,但本质上不是 RESTful,而且 RailwayJS更喜欢 RESTful 设置(尽管您也不必在RailwayJS 中使用基于资源的路由)。