websocket 服务端

简单服务端在这里

websocketpp 客户端

客户端并没有做断线重连,这个有兴趣的可以自己实现,下一章会实现的。几个预定义的还是要写,例如不想用boost,直接用asio,还是要定义ASIO_STANDALONE,其他的太简单,多熟悉官方的例子就好


#define _CRT_SECURE_NO_WARNINGS
#define _WEBSOCKETPP_CPP11_TYPE_TRAITS_
#define _SCL_SECURE_NO_WARNINGS
#define ASIO_STANDALONE
#include <websocketpp/config/asio_no_tls_client.hpp>
#include <websocketpp/client.hpp>#include <iostream>typedef websocketpp::client<websocketpp::config::asio_client> client;using websocketpp::lib::placeholders::_1;
using websocketpp::lib::placeholders::_2;
using websocketpp::lib::bind;// pull out the type of messages sent by our config
typedef websocketpp::config::asio_client::message_type::ptr message_ptr;// This message handler will be invoked once for each incoming message. It
// prints the message and then sends a copy of the message back to the server.
void on_message(client* c, websocketpp::connection_hdl hdl, message_ptr msg) {std::cout << "on_message called with hdl: " << hdl.lock().get()<< " and message: " << msg->get_payload()<< std::endl;websocketpp::lib::error_code ec;c->send(hdl, msg->get_payload(), msg->get_opcode(), ec);if (ec) {std::cout << "Echo failed because: " << ec.message() << std::endl;}
}int main(int argc, char* argv[]) {// Create a client endpointclient c;std::string uri = "ws://localhost:9002";if (argc == 2) {uri = argv[1];}try {// Set logging to be pretty verbose (everything except message payloads)c.set_access_channels(websocketpp::log::alevel::all);c.clear_access_channels(websocketpp::log::alevel::frame_payload);// Initialize ASIOc.init_asio();// Register our message handlerc.set_message_handler(bind(&on_message, &c, ::_1, ::_2));websocketpp::lib::error_code ec;client::connection_ptr con = c.get_connection(uri, ec);if (ec) {std::cout << "could not create connection because: " << ec.message() << std::endl;return 0;}// Note that connect here only requests a connection. No network messages are// exchanged until the event loop starts running in the next line.c.connect(con);// Start the ASIO io_service run loop// this will cause a single connection to be made to the server. c.run()// will exit when this connection is closed.c.run();}catch (websocketpp::exception const & e) {std::cout << e.what() << std::endl;}
}

websocketpp 最简单的客户端 一相关推荐

  1. python16进制字节序_第 1 章 套接字、IPv4和简单的客户端/服务器编程

    第 1 章 套接字.IPv4和简单的客户端/服务器编程 本章攻略: 打印设备名和IPv4地址 获取远程设备的IP地址 将IPv4地址转换成不同的格式 通过指定的端口和协议找到服务名 主机字节序和网络字 ...

  2. python能做哪些客户端_Python 实现简单的客户端认证

    问题 你想在分布式系统中实现一个简单的客户端连接认证功能,又不想像SSL那样的复杂. 解决方案 可以利用 hmac 模块实现一个连接握手,从而实现一个简单而高效的认证过程.下面是代码示例: impor ...

  3. java rest客户端_Java中的简单REST客户端

    java rest客户端 如今,大多数用于与某些服务器通信的移动应用程序都使用REST服务. 这些服务也是JavaScript或jQuery的常用惯例. 现在,我知道在Java中为REST服务创建客户 ...

  4. Java中的简单REST客户端

    如今,大多数用于与某些服务器通信的移动应用程序都使用REST服务. 这些服务也是与JavaScript或jQuery一起使用的常见做法. 现在,我知道在Java中为REST服务创建客户端的2种方法,在 ...

  5. java服务器向客户端发消息_java一个简单的客户端向服务端发送消息

    java一个简单的客户端向服务端发送消息 客户端代码: package com.chenghu.tcpip; import java.io.IOException; import java.io.Ou ...

  6. 基于Domoticz智能家居系统(十七)DIY一款基于MySensors的ESP8266+NRF24L01的MQTT(WIFI)和RF无线网关(三)一个简单MySensors客户端的验证实验

    DIY一款基于MySensors的ESP8266+NRF24L01的MQTT(WIFI)和RF无线网关(三)一个简单MySensors客户端的验证实验 一个简单MySensors客户端的验证实验 一. ...

  7. Python 实现简单的客户端认证

    更多编程教程请到:菜鸟教程 https://www.piaodoo.com/ 友情链接: 高州阳光论坛https://www.hnthzk.com/ 人人影视http://www.op-kg.com/ ...

  8. Netty简单实现客户端与服务端收发消息

    Netty简单实现客户端与服务端收发消息 这个小案例主要是实现netty收发消息,分为客户端,及服务端,以及包含了相关状态处理,主要的代码会放在最后 gitHub 地址上,有需要可以看一下 首先来简单 ...

  9. 【初识Netty使用Netty实现简单的客户端与服务端的通信操作Netty框架中一些重要的类以及方法的解析】

    一.Netty是什么? Netty 由 Trustin Lee(韩国,Line 公司)2004 年开发 本质:网络应用程序框架 实现:异步.事件驱动 特性:高性能.可维护.快速开发 用途:开发服务器和 ...

最新文章

  1. 关于蹭网的一点点感想
  2. FreeBSD学习笔记25-安装DHCP服务
  3. 汇编语言--div指令
  4. 台达变频器s1参数设置_【智】台达变频器计数输入功能接线和参数设置详解
  5. pythonpil模块安装_centos 安装python PIL模块
  6. html5+、ReactNative、Weex、Ionic之间的区别、(配置java、python、Android环境)、ReactNative(react-native-cli)、yarn、Weex
  7. python 大众点评模拟登陆_python项目实战:模拟登陆163邮箱,简单到爆
  8. 【Teradata】系统吞吐量重要参数QPS(TPS)、并发数、响应时间
  9. velocity 将数字转为以万为单位,保留2位小数
  10. 面试题22_栈的压入和弹出序列
  11. moonmq: 用go实现的高性能message queue
  12. php get安全过滤,php 有效安全过滤get,posd,cookie_PHP教程
  13. 09_用户登录退出实现
  14. 字体编辑用中日韩汉字Unicode编码表
  15. 图解十大机器学习算法
  16. voip|网络电话,软件实现电信座机
  17. 如何计算均值、标准差和标准误差
  18. mysql创建制度账户_Mysql数据库用户管理
  19. 网页编程 table 表格设计 css
  20. Python面向对象版学员管理系统

热门文章

  1. python数据挖掘学习笔记】十九.鸢尾花数据集可视化、线性回归、决策树花样分析
  2. C语言 const 笔记
  3. 百试不爽的求爱技巧百试不爽的求爱技巧
  4. 三部门部署开展非学科类校外培训收费专项整治工作
  5. 李子柒被坑,大厂生气了!字节跳动火速对杭州微念启动撤资
  6. 王思聪怒了!大众点评紧急道歉:相关账户已冻结
  7. 韩国浦项化学在中国斥资超2800亿韩元投建电动车电池材料厂
  8. iPhone 13系列又有新配色:猛男必看!
  9. 真的掏空了吗?华为开始疯狂出4G手机
  10. 上海新阳半导体收到ASML-1400光刻机 将用于研发193nm ArF光刻胶