Workerman Windows下实时推送网站提醒及在线用户数

字号+ 编辑: 国内TP粉 修订: 德玛西亚 来源: 蝈蝈博客 2023-09-11 我要说两句(3)

因workerman相关项目意外事件引发负面反馈较多, 文章系转载, 仅供参考, 请勿用于线上生产。

因workerman相关项目意外事件引发负面反馈较多, 文章系转载, 仅供参考, 请勿用于线上生产。

先下载一个workerman

官网介绍

Demo:

效果1:

接收消息页面:http://www.workerman.net:2123/

推送接口url:http://www.workerman.net:2121/?type=publish&to=uid&content=content

其中to为接收消息的uid,如果传空则向所有人推送消息 content 为消息内容

安装启动

首先:参考手册检查/安装workerman环境


1、下载:选择版本并下载(linux版本、windows版本)web-msg-sender,并解压缩到任意目录

2、启动:linux系统cd到到框架目录里运行php start.php start -d。windows系统进入到框架目录里双击start_for_win.bat文件启动。

3、测试:浏览器访问端口http://ip:2123或者http://域名:2123,例如 http://workerman.net:2123如图:(如果无法访问请检查服务器防火墙)

前端测试:

<script src='http://cdn.bootcss.com/socket.io/1.3.7/socket.io.js'></script>
<script>
    // 连接服务端,workerman.net:2120换成实际部署web-msg-sender服务的域名或者ip
    var socket = io('http://workerman.net:2120');
    // uid可以是自己网站的用户id,以便针对uid推送以及统计在线人数
    uid = 123;
    // socket连接后以uid登录
    socket.on('connect', function(){
        socket.emit('login', uid);
    });
    // 后端推送来消息时
    socket.on('new_msg', function(msg){
        console.log("收到消息:"+msg);
    });
    // 后端推送来在线数据时
    socket.on('update_online_count', function(online_stat){
        console.log(online_stat);
    });
</script>


后端调用api向任意用户推送:

<?php
// 指明给谁推送,为空表示向所有在线用户推送
$to_uid = "";
// 推送的url地址,使用自己的服务器地址
$push_api_url = "http://workerman.net:2121/";
$post_data = array(
   "type" => "publish",
   "content" => "这个是推送的测试数据",
   "to" => $to_uid, 
);
$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, $push_api_url );
curl_setopt ( $ch, CURLOPT_POST, 1 );
curl_setopt ( $ch, CURLOPT_HEADER, 0 );
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $post_data );
curl_setopt ($ch, CURLOPT_HTTPHEADER, array("Expect:"));
$return = curl_exec ( $ch );
curl_close ( $ch );
var_export($return);

阅完此文,您的感想如何?
  • 有用

    1

  • 没用

    0

  • 开心

    0

  • 愤怒

    0

  • 可怜

    0

1.如文章侵犯了您的版权,请发邮件通知本站,该文章将在24小时内删除;
2.本站标注原创的文章,转发时烦请注明来源;
3.Q群: 2702237 13835667

相关课文
  • mac开发接入微信公众号接口返回报错 cURL error 56: SSLRead() return error -9806

  • PHP的换行符是什么

  • pecl安装程序时报错Array and string offset access syntax with curly braces is no longer supported

  • 由于商家传入的H5交易参数有误,该笔交易暂时无法完成,请联系商家解决

我要说说
网上嘉宾点评
1 楼 IP 101.39.***.87 的嘉宾 说道 : 半年前
既然workerman这么坑就不要用,换框架会4?还出文档,你什么心态?

2 楼 IP 222.128.***.254 的嘉宾 说道 : 半年前
16年用过,简直就是一坨屎山,哪个公司用这种素来标榜自己性能的,叻色只为忽悠那些小白,**公司。

3 楼 IP 113.45.***.150 的嘉宾 说道 : 半年前
呵呵,鹅厂**出品,鲨臂专用框架。