我正在考虑使用RESTful Web服务构建应用程序。我的想法是将应用程序的RESTful(json等)部分构建为独立的,然后将前端(例如html / css / js / etc)作为该服务的客户端,尽管不是通过js,我想网页没有js工作,所以可能使用像LWP这样的东西来打电话。基本上结果是2个独立的应用程序。这是一个坏主意吗?好主意?我意识到这有点主观。
答案 0 :(得分:4)
我认为这是一个好主意。
这意味着最后:
您将拥有一个完整的API,至少具有本机图形界面的所有功能。因此,您不会在图形界面中找到任何无法作为服务提供的功能。
您将避免一些重复工作,因为您为了使图形界面正常工作而付出的所有努力也将反映在Web服务中,因为它们使用同一个功能。修复一个错误,另一个修复。
这也意味着一致性。
自动化测试可能更容易。
特别是在开源中保持模块化是件好事,因为这样可以让人们更容易外出并为您的服务编写单独的图形界面,甚至在使用相同的图形界面时修改您的服务。
答案 1 :(得分:0)
我期望看到这种类型的架构的主要问题是不会构建您认为自己的东西。有可能这个应用程序的RESTful部分将是前端,提供带有链接的text / html,以允许客户端发现您的应用程序。
您认为是RESTful Web服务的部分可能不是RESTful。您是否计划在Web服务的响应中嵌入链接?您将提供比application / json或application / xml更具语义含义的媒体类型吗?如果不是,您的Web服务不是RESTful。
我不是说你在做什么是错的,我只是说你可能没有做你认为你在做的事情,所以要小心使用RESTful约束指导你,因为你很可能会发现它难以应用它们。