如何解决REST API的可移植Javascript客户端
| 我将为RESTful Web服务创建一个基于JavaScript的客户端。客户端应简化对Web服务的访问,并将一些原始HTTP调用包装到更多的“ candy”函数和对象中。 我打算将此客户端库用于基于node.js的应用程序以及PhoneGap。因此,我不必关心“同源政策”。但是,在PhoneGap和node.js中调度HTTP请求是完全不同的。 现在,我想知道如何在JavaScript中实现一个客户端库,该客户端库可以在不同的“平台”(node.js,PhoneGap,甚至后来的浏览器)之间移植吗? 提前致谢解决方法
您可以尝试在nodejs下对XmlHttpRequest进行这种仿真,但是您仍可能需要对客户端库进行特殊处理才能在PhoneGap(以及其他基于浏览器的JavaScript平台)和nodejs下运行。
一种方法是检查在nodejs下默认未定义的\'window \'或在浏览器中未定义的\'global \'的内容。
编辑
看来我讲得太早了。查看abstract-http-request,虽然它不明确支持PhoneGap,但可能足以为您提供支持。
, Phonegap基本上只是一个浏览器。因此,如果您想绕过相同的原始策略,则可能需要查看不同的phonegap插件(GapSocket)以处理您自己的通信。
, REST是用于设计Web服务的体系结构样式。 Web服务不必使用HTTP即可实现RESTful,尽管其中很大一部分都可以使用。为了实现RESTful,基于HTTP的Web服务必须严格利用HTTP的资源名称(URI),操作(GET,PUT,DELETE等),错误代码(404、200等),等等。 。这意味着任何(基于HTTP)的REST客户端框架都可以与任何(基于HTTP)的REST服务器框架进行互操作:如果不这样做,则可能是错误的。因此,您的问题将分解为找到一个良好的通用REST客户端框架和一个或多个通用REST服务器框架。
对于基于node.js的Web服务,请查看Geddy服务器端框架(此处是文档)。
对于PhoneGap REST客户端,可以尝试使用Force.com JavaScript REST工具包(请参阅此扩展名)。
免责声明:我只阅读了这些框架,没有使用它们。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。