我需要一个网络API或正常的网络服务就可以了


Do I need a web API or normal webservice will do?

我的Android应用程序调用我存储在数据库中的一些数据。我使用过一些Java动态Web应用程序,它们将使用cxf并编写Web API,以满足请求。对我来说,这似乎是一个显而易见的想法。所以我编写了我的REST API,使用了Jersey,一切似乎都很好。

但后来我检查了在服务器上托管Java应用程序的成本,然后我决定用PHP编写API。我认为REST基本上只是提供不同的URL。但后来我在这里看到了这个教程。在本教程中,作者只调用了普通的PHP文件,仅此而已。我在PHP脚本中回显JSON编码的数据,然后返回。对我来说,这听起来不是很RESTful。也许是因为我看不到/getClientInfoaddClientInfo之类的URL。

调用普通的PHP脚本是很正常的。REST为它添加了什么?

简而言之:这并不重要。完全

这里实际的API是一个HTTP接口。这一切运行的web服务器是API。您只是通过在HTTP之上使用不同的URL或可能不同的协议(例如SOAP等)来进行不同的打扮。但从根本上讲,没有什么变化,您正在发出HTTP请求,并在HTTP响应中接收数据。

REST只是构造API的URL名称和参数约定等的一种方法,也是在HTTP上下文中有意义的一种方式。但这并不是唯一的方法,REST本身也不会以任何其他方式做任何绝对必要或不可行的事情。