我是新来的,对一些事情感到困惑
一些网站(twitter、foursquare等)提供API给第三方开发者调用。这些 API 是网站提供的 Web 服务吗?
这些网站本身是建立在这些公共 API/Web 服务之上的吗?理论上可以吗
比较传统构建的网站和基于网络服务构建的网站,有何优缺点?有性能、可扩展性等差异吗?
我相信有人可以给你一个更准确的答案,但阅读你的问题并应用我自学的知识:
W3C 中 Web 服务的简单技术定义:
Web 服务是一种软件系统,旨在支持通过网络进行可互操作的机器对机器交互。
http://www.w3.org/TR/2004/NOTE-ws-gloss-20040211/
我喜欢将网络服务视为其客户群使用的网站的交互元素。例如,Twitter 的 Web 服务包括:推文、消息、主题标签等。Web 服务是用户获取来回传递的 DO 或 DATA。
公共 Web API 为开发人员提供了在自己的站点上使用 Web 服务的方法。例如,Twitter 的 API 允许 example.com 网站在其自己的域内使用推文、消息传递、主题标签等。 API 是开发人员从外部访问 Web 服务以使应用程序使用这些服务的方式。
我对这个问题一无所知。我不会那样做。我将使用公共 API 公开访问的方法。但是,我从未编写过自己的 API,更不用说 Twitter 或 foursquare 的规模了。
我希望这有帮助。
首先,也许您需要更多有关 API 是什么的信息:请查看 Wikipedia api 页面。
回答您的问题(这些只是一般想法,而不是最佳实践):
在本例中,API 是开发人员用来访问 Web 服务的一种方式,它不是服务本身。
您提到的网站没有使用自己的API,因为这些API适用于远程用户(客户端),并提供有限的数据集,而网站需要最大的性能,访问完整的数据库,并且(几乎)总是使用服务器端代码。您提到的网站可能使用其他服务器端高性能 API。