web消息推送-goesay
原文:http://www.upwqy.com/details/22.html
1 GoEasy简介:
GoEasy - Web实时消息推送服务专家
最简单的方式将消息从服务器端推送至客户端
最简单的方式将消息从各种客户端推送至客户端
任何Web浏览器 任何开发语言 实时高效 隐私安全 稳定可靠 简单易用
2 注册获取到相关配置
注册链接:https://center.goeasy.io/cn/account/form

3 登录后创建免费应用 获取相关配置
创建一个免费应用 有一年的试用期
然后在控制台可以看到

面板中 有cdn-host rest-host 还有appkey 这些参数
4 消息发送和接收
4.1首先在你需要接收消息的页面 加载js
这里的 <CDN Host>替换掉
<script type="text/javascript" src="http(s)://<CDN Host>/goeasy.js"></script>
<script type="text/javascript">
var goEasy = new GoEasy({
appkey: '你的appkey值,我这里选择的是Common key,可以在上面面板中app keys后的查看中找到'
});
//GoEasy-OTP可以对appkey进行有效保护,详情请参考:GoEasy-Reference
</script>
然后配置接收数据的代码
goEasy.subscribe({
channel: 'demo_channel',
onMessage: function(message){
console.log('收到:'+message.content);
}
});
4.2 消息的发送有两种
4.2.1 通过API的方式发送
这里的 。<REST Host> 替换掉
$url = 'https://<REST Host>/publish';
$post = [
'appkey'=>'你的appkey',
'channel'=>'demo_channel',
'content'=>'测试的推送内容'
];
$info = curl_post_form_data($url,$post);
dump(json_decode($info,true));
/**
* Author: [一秋]
* @param $url
* @param array $params
* @return mixed|string
*/
function curl_post_form_data($url, array $params = array()){
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0); // 设置header
curl_setopt($ch, CURLOPT_URL, $url); // 设置访问的地址
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // 获取的信息返回
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $params);
$output = curl_exec($ch); // 采集
if (curl_error($ch)) {
return curl_error($ch);
}
return $output;
}
4.2.2 从web浏览器端推送消息
这里首先也是要加载js,
这里的js 可以放置到公共文件中
<script type="text/javascript" src="http(s)://<CDN Host>/goeasy.js"></script>
<script type="text/javascript">
var goEasy = new GoEasy({
appkey: '你的appkey值,我这里选择的是Common key,可以在上面面板中app keys后的查看中找到'
});
//GoEasy-OTP可以对appkey进行有效保护,详情请参考:GoEasy-Reference
</script>
然后配置发送消息的js
goEasy.publish({
channel: 'demo_channel',
message: 'Hello world!'
});
上面的两种推送方式 推送成功后,我们可以在接收消息的页面的console控制台看到

这里的 channel 理论上是无限制的 但是最好每个页面不超过6~8个
如果想要实现单用户推送 可以在使用 channel_userid 这样的 把用户ID绑定到channel上面 就可以了。可以自己尝试一下
快速入门文档:http://goeasy.io/cn/started
web消息推送-goesay的更多相关文章
- WEB消息推送-框架篇
WEB消息推送-comet4j 一.comet简介: comet :基于 HTTP长连接的“服务器推”技术,是一种新的 Web 应用架构.基于这种架构开发的应用中,服务器端会主动以异步的方式向客户端程 ...
- 实现web消息推送的技术和采用长轮询corundumstudio介绍
实时消息的推送,PC端的推送技术可以使用socket建立一个长连接来实现.传统的web服务都是客户端发出请求,服务端给出响应.但是现在直观的要求是允许特定时间内在没有客户端发起请求的情况下服务端主动推 ...
- WEB消息推送-原理篇
这篇文章主要讲述B/S架构中服务器“推送”消息给浏览器.内容涉及ajax论询(polling),comet(streaming,long polling).后面会附上源代码. 最近在工作有这么一个需求 ...
- SSM项目使用GoEasy 实现web消息推送服务
一.背景 之前项目需要做一个推送功能,最开始我用websocket实现我的功能.使用websocket的好处是免费自主开发,但是有几个问题:1)浏览器的兼容问题,尤其是低版本的ie:2)因为是推送 ...
- web消息推送的各种解决办法
摘要 在各种BS架构的应用程序中,往往都希望服务端能够主动地向客户端推送各种消息,以达到类似于邮件.消息.待办事项等通知. 往BS架构本身存在的问题就是,服务器一直采用的是一问一答的机制.这就意味着如 ...
- Web消息推送框架windows部署实践
一.官方下载地址:https://www.workerman.net/web-sender 二.解压至任意目录下,双击start_for_win.bat,效果如下图: 三.打开Chrome浏览器访问: ...
- WEB消息推送-comet4j
一.comet简介: comet :基于 HTTP长连接的“服务器推”技术,是一种新的 Web 应用架构.基于这种架构开发的应用中,服务器端会主动以异步的方式向客户端程序推送数据,而不需要客户端显式的 ...
- 使用SuperWebSocket实现Web消息推送
在大部分Web系统中,我们可能遇到需要向客户端推送消息的需求.SuperWebSocket第三方库能让我们轻松的完成任务.SuperWebSocket第三方库可以从网上下载,不过通过Visual St ...
- 关于php使用基于socket Web消息推送(未完)
转:http://blog.csdn.net/young_phper/article/details/52441143 http://www.workerman.net/ http://blog.cs ...
随机推荐
- Activiti-02-activiti api
流程引擎API和服务 通过ProcessEngine你可以获取各种服务,它和所有的服务对象都是线程安全的,因此整个整个应用中可以只有一份. ProcessEngine processEngine =P ...
- Linux环境下启动MySQL数据库出现找不到mysqld.sock的解决办法!
问题: 在普通用户权限下运行:mysql -u root -p,回车之后如果会出现如下错误:ERROR 2002 (HY000): Can't connect to local MySQL serve ...
- JavaScript中的alert、confirm、prompt
alert: var a=alert('Alert');//界面只有一個確定alert(a); //返回值為undefined confirm: var c= confirm('Confirm') ...
- 彻底弄懂AngularJS中的transclusion
点击查看AngularJS系列目录 彻底弄懂AngularJS中的transclusion AngularJS中指令的重要性是不言而喻的,指令让我们可以创建自己的HTML标记,它将自定义元素变成了一个 ...
- class DELPHICLASS TObject
class DELPHICLASS TObject 1.自己猜想:delphi,是windows平台的快速应用程序开发工具Rapid Application Development 简称RAD. ...
- Codeforces 858A. k-rounding 数论
题目: 题意:输入n和k,找到一个最小的数,满足末尾有至少k个0和是n的倍数. 最小的情况 ans = n,最大的情况 ans = n*pow(10,k). 令 k = pow(10,k); 我们发现 ...
- 【BZOJ】 2463 [中山市选2009]谁能赢呢?(博弈论)
Description 小明和小红经常玩一个博弈游戏.给定一个n×n的棋盘,一个石头被放在棋盘的左上角.他们轮流移动石头.每一回合,选手只能把石头向上,下,左,右四个方向移动一格,并且要求移动到的 ...
- AIM Tech Round 4 (Div. 2)ABCD
A. Diversity time limit per test 1 second memory limit per test 256 megabytes input standard input o ...
- 嵌入式linux开发之工具------tftp
我在嵌入式linux开发中用到tftp的地方主要有2个方面: 1.是在嵌入式目标板启动时,bootloader启动时通过uEnv文件,下载dtb文件和kernel文件: 2.是在嵌入式目标板启动后,通 ...
- js-注释代码习惯
功能块代码 /** * xxxx */ 定义的函数或方法 /* xxxx */ 调用了某个函数或方法 // <--xxx