Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xc13262215230
engine2.0
提交
5ae4ad1b
E
engine2.0
项目概览
xc13262215230
/
engine2.0
通知
9
Star
3
Fork
8
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
E
engine2.0
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
5ae4ad1b
编写于
12月 16, 2023
作者:
xc13262215230
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
创建httpclient工程2
上级
3478ebc2
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
50 addition
and
4 deletion
+50
-4
engine2.0/engine2.0/Depends/include/TcpClient.hpp
engine2.0/engine2.0/Depends/include/TcpClient.hpp
+2
-2
engine2.0/engine2.0/Doc/Record.txt
engine2.0/engine2.0/Doc/Record.txt
+20
-1
engine2.0/engine2.0/EasyHttpClient/client.cpp
engine2.0/engine2.0/EasyHttpClient/client.cpp
+28
-1
engine2.0/engine2.0/engine2.0.sdf
engine2.0/engine2.0/engine2.0.sdf
+0
-0
engine2.0/engine2.0/engine2.0.v12.suo
engine2.0/engine2.0/engine2.0.v12.suo
+0
-0
未找到文件。
engine2.0/engine2.0/Depends/include/TcpClient.hpp
浏览文件 @
5ae4ad1b
...
...
@@ -145,8 +145,8 @@ namespace doyou {
}
}
//响应网络消息
virtual
void
OnNetMsg
(
netmsg_DataHeader
*
header
)
=
0
;
//
响应网络消息
virtual
void
OnNetMsg
(
netmsg_DataHeader
*
header
)
=
0
;
// 纯虚函数
//发送数据
int
SendData
(
netmsg_DataHeader
*
header
)
...
...
engine2.0/engine2.0/Doc/Record.txt
浏览文件 @
5ae4ad1b
...
...
@@ -68,8 +68,10 @@ g++ server.cpp -std=c++11 -pthread -o EasyServer
45.代替友元函数实现的另一种方式实现<的操作符重载 023+
46.外网云服务编译测试1 011+
47.外网测试和跨域问题处理 030+
48.创建httpclient工程 106+ [2023-12-14: 3311]
code lines sum -> 3205+
code lines sum -> 3311+
//===================================================================================================================
[注意:linux编译指令]
...
...
@@ -567,6 +569,23 @@ RELEASE模式,不具备调试符号,性能最佳,工程实际应用模式
106.新建的工程必要支持有日志系统和配置文件系统。
107.http服务端一般都是提供域名和端口,很少直接提供ip地址和端口的,因为
域名对应ip, 并且可以随时更换IP, 保持域名不更换。当服务器收到恶意攻击时,
甚至可以将域名解析到其它服务器上进行操作防御,所以,一般情况是写域名的,
服务器很容易更换,而IP地址一般都是和PC进行了绑定,更换机器不方便,升级
比较麻烦。域名到IP有一个转化过程,这个转化过程可由程序员控制实现。
一个域名可以通过解析成多个ip+port。
108.域名解析:只有将域名解析成ip+port,这样才能真正的去链接服务器。
109.httpclient请求格式:
GET /add?a=15&b=7 HTTP/1.1
//Host: 127.0.0.1:4568
Host: ipv4.dosfu.com:4568
Connection: keep-alive
...
...
engine2.0/engine2.0/EasyHttpClient/client.cpp
浏览文件 @
5ae4ad1b
...
...
@@ -7,6 +7,31 @@ using namespace doyou::io;
class
MyClient
:
public
TcpHttpClient
{
public:
MyClient
()
// 构造函数
{
//pClient->InitSocket(AF_INET, 10240, 10240);
}
virtual
~
MyClient
()
// 虚析构函数
{
//pClient->Close(); // 关闭
}
public:
//
virtual
void
OnNetMsg
(
netmsg_DataHeader
*
header
)
// 重写继承自父类的纯虚函数
{
}
//
void
GetData
(
char
const
*
url
)
{
//pClient->Connect("127.0.0.1", 4567); // 分析:这里应该填写域名,域名到IP存在一个可控制的转化
}
};
...
...
@@ -18,7 +43,9 @@ int main(int argc, char* args[])
// [配置系统]
Config
::
Instance
().
Init
(
argc
,
args
);
MyClient
pClient
;
// 创建对象[在栈上实例化对象,对象由系统自动析构]
pClient
.
GetData
(
"www.dosfu.com/add.php?a=1&b=2"
);
// 请求数据[域名可以解析成ip+port]
return
0
;
...
...
engine2.0/engine2.0/engine2.0.sdf
浏览文件 @
5ae4ad1b
无法预览此类型文件
engine2.0/engine2.0/engine2.0.v12.suo
浏览文件 @
5ae4ad1b
无法预览此类型文件
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录