请问如何做一个tcp客户端访问网页

本帖最后由 oXiFangShiBai 于 2013-02-01 10:28:15 编辑

使用tcp协议,来访问网页,这样主要是做一个长连接

我的实现思路是:

1.连接 服务器 【举例用百度 www.baidu.com】

2.发送http协议头,获取服务器返回网页内容 并 处于监控状态,因为服务器会每隔1分钟发心跳包给我,我的目的就是要得到心跳包的内容,

3.我的代码如下,出现的问题是,发送了http协议头,服务器没有任何反映,我用wireshark抓包,甚至没有变成http请求,我想,一定是我发送的时候出了问题,但自己研究了半天没弄好,所以来请教大家

下面贴上我的代码

client.h

//client.h

#ifndef TRYCLI_H_

#define TRYCLI_H_

#include

#include

#include

#include

#include

#include

#include

class Client : public QWidget

{

Q_OBJECT

private:

bool isConnected;

QLineEdit *serverIpEdit;

QLabel *label;

QPushButton *startButton;

QTcpSocket *tcpClient;

quint16 blockSize;

QString sendString;

QString readString;

public:

Client();

~Client();

public slots:

void displayError(QAbstractSocket::SocketError socketError);

void newConnect();

void readMessage();

void sendMessage();

};

#endif

//client.cpp

//client.cpp

#include "client.h"

#include

#include

#include

#include

#include

#include

Client::Client()

{

setWindowTitle("Client");

resize(300, 100);

serverIpEdit = new QLineEdit("www.baidu.com");

startButton = new QPushButton("start");

label = new QLabel("Emtpy");

isConnected = false;

QVBoxLayout *layout = new QVBoxLayout;

layout->addWidget(serverIpEdit);

layout->addWidget(label);

layout->addWidget(startButton);

setLayout(layout);

tcpClient = new QTcpSocket(this);

connect(startButton, SIGNAL(clicked()), this, SLOT(newConnect()));

connect(tcpClient, SIGNAL(connected()), this, SLOT(sendMessage()));

connect(tcpClient, SIGNAL(readyRead()), this, SLOT(readMessage()));

connect(tcpClient, SIGNAL(error(QAbstractSocket::SocketError)),

this, SLOT(displayError(QAbstractSocket::SocketError)));

}

Client::~Client()

{

}

void Client::newConnect()

{

blockSize = 0;

tcpClient->abort();

tcpClient->connectToHost(serverIpEdit->text(), 80);

网页版怎么连接tcp服务器,请教怎么做一个tcp客户端访问网页相关推荐

  1. 客户端C和服务器S之间建立一个TCP连接,该连接总是以1KB的最大段长发送TCP段,客户端C有足够的数据要发送。当拥塞窗口为16KB的时候发生超时,如果接下来的4个RTT往返时间内的TCP段的传输是成

    客户端C和服务器S之间建立一个TCP连接,该连接总是以1KB的最大段长发送TCP段,客户端C有足够的数据要发送.当拥塞窗口为16KB的时候发生超时,如果接下来的4个RTT往返时间内的TCP段的传输是成 ...

  2. Mac连接网线能够接收微信消息,浏览器不能访问网页

    1. 问题 Mac连接网线能够接收微信消息,浏览器不能访问网页. 访问网页,有提示:如下信息,找不到IP地址 2. 解决方法 和其他人的配置进行比较,发现自己的网络设置中,DNS服务器显示的是8.8. ...

  3. 零基础Unity做一个中秋诗词鉴赏网页,提前祝您中秋快乐!(DoTween动画 | WebGL视频 | 大文件上传GitHub)

    零基础Unity做一个中秋诗词鉴赏网页,提前祝您中秋快乐! 前言 一,环境搭建 1.1 安装Unity 1.2 添加WebGl模块 二,开发项目 2.1 导入插件 2.2 项目搭建 2.3 逻辑处理 ...

  4. [python] 做一个写诗歌的网页

    python做一个写诗歌的网页 picture下面保存的网站壁纸图片 txt保存的所有的诗歌信息 下面的主页信息index.html <!DOCTYPE HTML><html> ...

  5. 网页打开手机连接到服务器失败,手机服务器无法连接到服务器失败

    手机服务器无法连接到服务器失败 内容精选 换一换 需要准备一台Linux系统的物理服务器或虚拟机作为镜像制作服务器,即宿主机,并为宿主机安装Linux操作系统.以CentOS 7.3 64bit操作系 ...

  6. 搜网页显示未连接上服务器是什么,【科普君】网页搜索时,出现“404”到底是什么意思?...

    在你着急查找资料 盯着电脑 为啥不动了! 这个 404 not found 到底是啥玩意儿? 404的秘密 404 not found 有时候也可能出现404 error 不管是找不到(not fou ...

  7. 梦幻西游网页版什么是通用服务器,梦幻西游网页版定神香S18526

    游戏简介: <梦幻西游>网页版爆爽来袭,这是你从没见过的梦幻西游!极速节奏,超高爆率,前爽未有的冒险之旅,三界由你来主宰! 开局即可轻松获得无级别限制武器,还有各色极品召唤兽.神兽.伙伴. ...

  8. linux版qq怎么创建桌面快捷方式,Linux_ubuntu系统怎么把网页版QQ添加到程序列表?,新手教程:ubuntu网页QQ快捷方 - phpStudy...

    ubuntu系统怎么把网页版QQ添加到程序列表? 新手教程:ubuntu网页QQ快捷方式 1.chrome浏览器打开网页QQ网址:http://web2.qq.com/ 2.打开菜单>更多工具& ...

  9. 如何动手做一个属于自己的网页——HTML基础知识总结

    目录 HTML简介 特殊字符 HTML标签介绍 常用标签介绍 1.字体标签 2.标题标签 3.超链接 4.列表标签 5.img标签 6.表格标签 7.iframe框架标签(内嵌窗口) 8.表单标签 表 ...

最新文章

  1. 12/12团队会议10
  2. html加载出来图片乱掉,HTML基础 img alt 图片加载失败时,出现替代文本
  3. 《深入理解java内存模型》学习整理1
  4. 解决用户登录查库问题
  5. 5 计算机组成原理第四章 指令系统
  6. mysql 临时表 限制_Mysql临时表
  7. echart 高度 不用 不撑满_注意厨房台面高度及细节 装出省心舒服 装出事半功倍...
  8. 把数据输出到Word (非插件形式)
  9. 全能电子地图下载器 破解版 亲测可用
  10. win的反义词_英语中最常见 反义词、近义词、同义词及词形转换。欢迎大家收藏...
  11. qlv格式转mp4格式(简单、高效)
  12. 甘谷2021年高考成绩查询入口,筑梦百天,赢在高考|甘谷一中2021届高考百日誓师大会...
  13. 用mission planner或者3drradioconfig软件配置X-ROCK数传电台
  14. 【离散数学】关于欧拉图与哈密顿图的讨论
  15. 在Linux上搭建nim服务器安装AIX
  16. 迅雷导出ed2k到eMule链接无效处理
  17. html百度地图api 截图,百度地图(截图)
  18. R和R-Studio安装
  19. 带小数点数码管的显示
  20. 软件需求规格说明书的编写指南

热门文章

  1. android根目录无权访问,关于android:已注册为Git根目录,但未在其中找到任何Git存储库...
  2. 炒股魅力:数据分析侠变身“赚钱机器”
  3. w ndows键是哪一个,Windows键是哪个 电脑上的Win键在哪?【图文】
  4. 机械键盘win键和alt键反了
  5. UVA1723 Intervals
  6. 天蝎项目整机柜服务器解决方案,天蝎2.0整机柜服务器技术规范rev0.5(final).doc
  7. 描述文件是什么?也算是APP的一种吗?
  8. JavaScript学习笔记(条件判断)
  9. 【Hive】Hive数据倾斜以及解决方案
  10. window安装mysql默认密码忘记_MySQL忘记root密码的处理办法及安装windows服务