我是REST Web服务中的新成员。我一直使用SOAP构建自WSDL以来的Web服务,并自动生成Java代码中的Web服务逻辑,但REST拥有统一的合同,因此我们不需要创建合同定义,SOA表示自上而下的方法是最好的方式来创建一个解耦的Web服务,但我不知道如何在自顶向下或自下而上的方法中创建REST服务。我想了解一些您的经验以及如何使用Java创建REST Web服务。 IDE或API并不重要。如何使用自顶向下的方法构建REST Web服务?
回答
直到最近这是不可能的。由于缺少REST WSDL,您无法使用REST自顶向下。这就是为什么很多企业从未迁移到REST的原因,例如在银行交易中,您希望界面的定义和严格。你可以在SOAP中创建这个严格的定义,但以前它很难休息。
REST正忙着变得更像一些方面的SOAP,因为现在需要通过各种竞争标准来解决定义明确的接口。或者用简单的英语,有很多项目竞争成为REST世界的WSDL,但它们不限于:
- RAML。
- Swagger。
- WADL。
我在RAML中使用了一些自上而下的代码生成,它是相对好的,但非常流血的边缘。
问题是如果你需要这样定义良好的接口,你为什么要去REST?整个XML vs JSON参数不是一个有效的原因。臃肿的JSON可能比最佳的XML更大。
您可以使用SOAP或REST创建Web服务并在它们之间进行交换。对于基于网络的服务(SOAP)来做到这一点是与自上而下的方法,以获得从逻辑分离合同的最好方式,REST已通过HTTP方法的所有服务统一合同。所以,他们已经有了一个分离的合同,但你必须用自下而上的方法创建REST服务,那么,这句话对我来说没有任何意义。在工作中我们使用了SOAP,但是我发现现在REST更受欢迎。在他们要求我们迁移SOAP服务,以REST服务未来几天(我不知道为什么,只是官僚)当然 – Reyjhonny
@Reyjhonny可以SOAP和REST之间交换数据。但是REST只能在HTTP上运行,并且没有官方的WSDL类型的对象。 SOAP可以在HTTP或SMTP上运行,但不绑定到HTTP。因此SOAP和REST在这方面有着根本性的不同。 – Namphibian
不,你是不正确的REST没有任何合同。这就是REST很简单的原因,REST没有正式的自上而下的方法。尝试使用RAML它提供了一些自上而下的功能,但并没有什么官方的。 – Namphibian
- 1. 如何以自顶向下的方式构建Web UI?
- 2. 创建REST Web服务的方法?
- 3. BDD自顶向下方法
- 4. 自顶向下的Web服务和自下而上的Web服务有什么区别?
- 5. 如何从REST风格的Web服务方法调用servlet?
- 6. 如何在使用ASP.NET构建的web服务中调度方法调用
- 7. 使用C#构建REST服务
- 8. 自顶向下方法vs自下而上方法?
- 9. 如何使用来自SQL Server中的REST Web服务
- 10. 在没有Web服务器的情况下构建Web服务
- 11. 使用REST XML Web服务
- 12. Web服务器和REST方法
- 13. REST Web服务建议
- 14. 构建Web服务
- 15. 有没有更好的方法来创建Django REST Web服务?
- 16. 如何使用Laravel 5.3创建REST完整Web服务Api
- 17. 自顶向下coldfusion webservice
- 18. 如何使用.NET 3.5和Visual Studio 2010构建WCF REST服务?
- 19. 使用Cocoa构建HTTP Web服务器
- 20. 使用XML构建Web服务?
- 21. WCF REST服务 - 自主机Windows服务 - 如何使用%的URL
- 22. 如何使用HTTPWebRequest在Web服务上调用Web方法?
- 23. 如何在REST Web服务中编写认证方法?
- 24. 如何在REST Web服务中输出@GET方法?
- 25. 使用jQuery使用REST Web服务
- 26. Java - 我如何构建应急服务层调用Web服务
- 27. 如何使用Delphi构建独立的SOAP Web服务?
- 28. 如何为使用Perl构建的Web服务显示WSDL
- 29. 如何使用Java构建简单的安全Web服务?
- 30. 如何使用REST服务
我使用[改装](http://square.github.io/retrofit/),使一个Android的Java HTTP客户端。 – hexicle