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