<分区>
我希望创建一个 API,以便其他网站可以从我的 Web 应用程序访问数据。
我无法在网上找到任何资源来解释创建您自己的 javascript API 的过程。
我想学习如何设置身份验证、数据传输等。
如何编写自己的 JavaScript API?
是否有任何好的教程可以解释创建 JavaScript API(如 GData API 或 YouTube API)的过程?
我实际上会在 2 个不同的应用程序上执行此操作。一个是在带有 Tomcat、MySQL 和 Java 的 apache 服务器上。另一个是在带有 MySQL 和 PHP 的 apache 上。前端全部用 javascript 编写,通过它与后端交互。我已经开始编写他们将用来与我们的功能交互的库。
这是一个非常笼统/广泛的问题,因此只会获得非常笼统/笼统的回应。如果不知道您正在使用的服务器端技术、您当前的架构、完成的工作量与必须完成的工作量相比,很难提出任何建议(与采用一种方法需要付出多少努力相关)另一个)等
我个人并不熟悉 GData 或 YouTube API,因此我不知道它们的技术。不过,我可以提出以下个人建议:
1) 我建议您避免直接对页面进行 HTML 检查,而是建议使用服务器端 API 来补充您的客户端 API。具体来说,我会考虑 RESTful like approach您将实体/数据视为您希望对其采取行动的资源。
这种方法的好处是独立于页面的实际 View /HTML 表示,因此更能适应变化。如果您直接针对 HTML 编写 API,则任何时候您更改页面(即使内容/数据保持不变),您都将面临破坏 API 的风险。
拥有服务器端组件的另一个好处是您可以利用 JSONP这可以减轻进行跨域请求所涉及的一些痛苦。然而,JSONP 的一个缺点是您不能发出 POST 请求,只能发出 GET 请求,这并不完全符合 RESTful 方法(但我仍然相信 RESTful 架构提供了许多好处)。
2) 数据传输是一个简单的建议 - 毫无疑问我会选择 JSON .在某些情况下,XML 可能比 JSON 更适合数据格式,但总的来说,我认为您会发现 JSON 非常适合您的需求。
3) 跨域请求的客户端身份验证可能很困难。这里的一种选择是使用 iframe 进行身份验证。另一种选择是使用 HMAC 或 OAuth。
4) 至于实际编写 JavaScript API,我建议您阅读 SO 上关于 JavaScript books 的一些主题。 .这可能包括关于命名空间和其他对组织 API 有用的主题的讨论。
正如我所说 - 这些都是非常通用的建议。可能是您的用例可以通过快速而肮脏的 HTML 抓取来完成(尽管您可能需要使用 IFrame 来绕过跨域限制)。总的来说,我上面提到的内容并不是一项微不足道的任务,特别是如果这些要素现在都没有到位的话。