4 Star 17 Fork 6

Hprose / hprose-js

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
MIT

Hprose

Promises/A+ logo

Hprose for JavaScript

Join the chat at https://gitter.im/hprose/hprose-js Build Status Sauce Test Status bower version npm version License



简介

Hprose 是高性能远程对象服务引擎(High Performance Remote Object Service Engine)的缩写。

它是一个先进的轻量级的跨语言跨平台面向对象的高性能远程动态通讯中间件。它不仅简单易用,而且功能强大。你只需要稍许的时间去学习,就能用它轻松构建跨语言跨平台的分布式应用系统了。

Hprose 支持众多编程语言,例如:

  • AAuto Quicker
  • ActionScript
  • ASP
  • C++
  • Dart
  • Delphi/Free Pascal
  • dotNET(C#, Visual Basic...)
  • Golang
  • Java
  • JavaScript
  • Node.js
  • Objective-C
  • Perl
  • PHP
  • Python
  • Ruby
  • ...

通过 Hprose,你就可以在这些语言之间方便高效的实现互通了。

本项目是 Hprose 的 JavaScript 语言版本实现。

更多 Hprose 2.0 for JavaScript 文档: https://github.com/hprose/hprose-js/wiki

浏览器支持

桌面浏览器

  • Google Chrome
  • Apple Safari
  • Mozilla Firefox
  • Opera
  • Microsoft Internet Explorer 6.0+
  • Netscape 7+
  • Konqueror
  • ...

移动浏览器

  • iOS 上的 Apple Safari
  • iOS 上的 Google Chrome
  • Android 上的 Google Chrome
  • Android 的默认浏览器
  • Windows Phone 上的 Internet Explorer
  • Opera Mobile
  • WebOS 的默认浏览器
  • Blackberry 的默认浏览器
  • N9 MeeGo 的默认浏览器
  • N9 MeeGo 上的 Mozilla Firefox
  • *Symbian^3 的默认浏览器
  • *Opera Mini
  • *Pocket IE
  • ...

以上所有浏览器(除了加星号标注的),使用 Hprose for JavaScript 均支持跨域调用。

混合应用支持

  • ionic + cordova (http, tcp, websocket)
  • Chrome extentions (http, tcp, websocket)
  • APICloud (http, tcp*)
  • DCloud (http)
  • AppCan (http)
  • DeviceOne (http)
  • ... (http, websocket)

在 APICloud 平台上,TCP 只在 iOS 上有效,因为 APICloud 的 Android SDK 有个 bug,但是他们不肯修复,所以我也无能为力。

使用

你不需要使用 javascript 的源文件,你只需要在你的 html 中包含 hprose.js 就够了。

你可以将文件 FlashHttpRequest.swf 放在任何地方, 然后通过在 script 标签上设置 flashpath 属性来指定它的加载路径就行了。如果你忽略该属性,默认路径是当前路径。

异常处理

如果服务器端发生错误,或者你的服务函数或方法抛出了异常,它将被发送到客户端。你可以在成功回调函数后面传入错误回调函数来接收它。如果你忽略该回调函数,客户端将忽略该异常,就像从来没发生过一样。

例如:

<html>
<head>
<script type="text/javascript" src="hprose.js" flashpath="/"></script>
</head>
<body>
<script type="text/javascript">
    var client = hprose.Client.create("http://www.hprose.com/example/", ["hello"]);
    client.hello("World!")
    .then(function(result) {
        alert(result);
    }, function(err) {
        alert(err);
    });
</script>
</body>
The MIT License (MIT) Copyright (c) 2008-2018 http://hprose.com Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

简介

Hprose 全名是高性能远程对象服务引擎。 它是一个新型的轻量级跨语言跨平台面向对象的高性能远程动态通讯中间件。它不但易学易用,而且功能强大。本项目是 Hprose 的 JavaScript 版本实现。 展开 收起
JavaScript
MIT
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
JavaScript
1
https://gitee.com/andot/hprose-js.git
git@gitee.com:andot/hprose-js.git
andot
hprose-js
hprose-js
master

搜索帮助

14c37bed 8189591 565d56ea 8189591