最近在做一个H5+APP,需要一个推送消息的功能,正常情况下呢第一反应就是用websocket,但是目前发现还是有蛮多地方要注意的,官方资料有点少,还没入坑。
先来说说其他的一些东西。
用H5开发混合APP在于不能亲自去操控底层的东西,5+的接口还没有做到那么厉害,所以只能用第三方平台来做推送消息的功能,而HBuilder 推荐的个推和米推,当然是选择用个推,而我希望的是希望单独推送给某个用户,想去注册登录的,发现个推的官网居然注册不了,代码出错了,CSDN登录又忘记密码了,结果登了五次后就提示创建账号失败,我也是无语了。
结果无意中发现了 Goeasy.js 这个神奇推送服务专家,无论你是何种语言,任何浏览器都能帮你解决推送消息的问题,重点是简单!简洁!简单!简洁!
先给个官方链接:
http://goeasy.io/
来个最简单的JS 例子:
第一步: 在您的项目中引入GoEasy
注意:
1. 请不要将goeasy.js下载到本地,GoEasy动态为不同浏览器和操作系统提供不同goeasy.js,使用下载到本地的goeasy.js,将会导致某些用户不能发送和接收消息。
2. 如果您的应用程序需要支持Windows XP用户,请务必使用HTTP来获取js文件,GoEasy将于2016年9月22日升级所有SSL证书至SHA-2,届时起Windows XP用户将无法使用HTTPS连接GoEasy。
<script type="text/javascript" src="http(s)://cdn.goeasy.io/goeasy.js"></script>
<script type="text/javascript">
var goEasy = new GoEasy({
appkey: '您的app key'//请在goEasy官方创建一个应用,将获取到的APPKEY填到这里
});
//GoEasy-OTP可以对appkey进行有效保护,详情请参考:GoEasy-Reference
</script>
第二步:发送消息
您可以使用GoEasy从任何服务器,或任何客户端向您的Web客户端推送消息
2.1 使用RESTful API方式推送消息
不论您的系统是用何种语言开发,您都可以通过发送一个http请求来调用GoEasy的RESTful API来推送您的消息到web浏览器。如果您正在使用Java,您可以直接使用我们提供的java SDK来发送消息。
URL:
http(s)://goeasy.io/goeasy/publish
Method:
Post
参数:
参数名字 是否必需 描述
appkey 是 您的app key
channel 是 您的目标channel
content 是 推送的消息内容
RESTful API (Php, iOS, .Net, Ruby ...)Java
2.2 从web浏览器端推送消息
goEasy.publish({
channel: 'demo_channel',
message: 'Hello world!'
});
Javascript
第三步:在web浏览器端接收消息
goEasy.subscribe({
channel: 'demo_channel',
onMessage: function(message){
alert('收到:'+message.content);
}
});
//个人代码
<script type="text/javascript">
var goEasy = new GoEasy({
appkey: 'xx-cxxxxxxx5xxxxxxxxxxxxxxxxxxxxxxxxxx'//自己创建的goeasy应用
});
//GoEasy-OTP可以对appkey进行有效保护,详情请参考:GoEasy-Reference
function send(msg){//发送消息
goEasy.publish({
channel: '员工135',//channel是识别用户的标志,如果把所有用户的subscribe方法中的channel参数都单独设置成某一个唯一的标识,比如“服务器”,就可以实现服务器对单一用户的消息推送,,同时,服务器也可以对所有用户的channel推送消息,作为广播推送。如果publish和subscribe中的所有channel统一,就形成了“聊天室”的形式怎么样,是不是很简单,很强大!!!!
message: msg
});
}
goEasy.subscribe({
channel: '员工135',
onMessage: function(message){
alert('收到:'+message.content);
}
});
</script>
唯一的缺点是,要钱,233,不知道客户愿不愿意支付这笔费用,其实我觉得很便宜,价格如下:
支持100个
并发连接
¥33.00CNY/月
200,000条消息
无限channel个数
SSL安全连接
支持300个
并发连接
¥66.00CNY/月
400,000条消息
无限channel个数
SSL安全连接
支持1,500个
并发连接
¥198.00CNY/月
1,000,000条消息
无限channel个数
SSL安全连接
支持6,000个
并发连接
¥660.00CNY/月
5,000,000条消息
无限channel个数
SSL安全连接
支持20,000个
并发连接
¥1,980.00CNY/月
15,000,000条消息
无限channel个数
SSL安全连接
超过20,000个
并发连接
联系GoEasy
contact@goeasy.io