【Linux网络编程】:URL(encode),HTTP协议,telnet工具
发布时间 - 2025-06-25 00:00:00 点击率:次前言:1.url1.1概念解释
URL:Uniform Resource Locator(统一资源定位器)。
URL是互联网上用于标识特定资源的地址。它是一种标准的网络地址格式,用于指示网络资源的位置和访问方法。
因此,URL帮助我们定位我们所需资源的位置(在哪里),以及如何访问这些资源(如何做)。
例如:
以下是百度的网址,直接在浏览器中输入此地址即可访问百度。
1.2基本格式:scheme:表示协议类型。如:http,https。
host:表示服务器域名或IP地址。
port:表示端口号,http默认使用80端口,https默认使用443端口。现在大多数情况下不显示,访问时浏览器会自动补充。
path:表示资源的路径,指定要访问的服务器上的具体资源。注意:/不一定表示根目录,而是web的根目录。
query:查询字符串,向服务器传递参数。它是一对一对的key=value,多个key=value用&连接。
1.3URL-Decode,URL-Encode当我们查询一些特殊字符时,会对这些字符进行编码。
解码的方法是:根据ASCII码表,将其转换为16进制,然后加上百分号%。
1.4URL-encode工具:点击这里:
2.HTTP协议2.1https与http现在我们看到的大多数是https,而https是从http发展而来的,https更为安全。在这个信息时代,确保信息的安全性非常重要。
数据加密:通过SSL/TLS加密数据,确保数据在传输过程中不被窃取。身份验证:通过数字证书验证服务器的身份,确保客户端连接到的是正确的服务器。完整性保护:通过加密算法确保数据在传输过程中不被篡改。客户端发起HTTPS请求。服务器发送SSL/TLS证书。客户端验证证书的有效性。客户端和服务器协商加密算法和密钥。客户端和服务器通过加密通道进行数据传输。2.2http的宏观格式:http有请求模式和响应模式,这两个的格式基本相似,但第一行有所不同。
请求行包含:
1.请求方法。2.URI。3.http版本。
请求方法包括GET、POST等。
响应行:
1.http版本。2.错误码。3.错误描述。
2.3http版本的直接区别:目前使用的http版本包括1.0、1.1和2.0。现在主要使用的是1.1或2.0。
HTTP/1.0:简单但性能低,适合早期的静态网页。 HTTP/1.1:解决了HTTP/1.0的许多性能问题,引入了持久连接和内容压缩等功能,是目前广泛使用的版本。 HTTP/2:在性能和功能上进行了重大改进,通过多路复用、头部压缩和服务器推送等技术,显著提高了传输效率和用户体验。 2.4实例代码:代码语言:javascript代码运行次数:0运行复制```javascript
pragma once#include #include #include #include #include #include #include "TcpServer.hpp"using namespace TcpServerModule;class HttpServer{ const std::string sep = "\r\n"; const std::string blank_line = "\r\n";public: HttpServer(int port) : _tsvr(std::make_unique(port)) { } void Start() { _tsvr->InitServer([this](SockPtr sockfd, InetAddr client) { return this->HandlerHttpRequest(sockfd, client); }); _tsvr->Loop(); } // 处理http的方法 bool HandlerHttpRequest(SockPtr sockfd, InetAddr client) { LOG(LogLevel::DEBUG) Fd() Recv(&s); std::cout Send(httpresponse); return true; } ~HttpServer() {}private: std::unique_ptr _tsvr;};
---3.telnet命令:主机名和IP地址:表示要连接的远程IP地址。
端口号表示要连接的端口号,如果不指定,默认是23(telnet服务的标准端口)。
- 测试网络服务
telnet命令可以用来测试各种网络服务是否正常运行。例如,测试HTTP服务是否正常:代码语言:javascript代码运行次数:0运行复制
javascript telnet example.com 80
连接成功后,可以手动输入HTTP请求:
代码语言:javascript代码运行次数:0运行复制javascript GET / HTTP/1.1Host: example.com
然后查看服务器的响应。- 远程登录虽然现代网络中更推荐使用ssh(更安全),但telnet仍然可以用于远程登录到某些旧系统:
代码语言:javascript代码运行次数:0运行复制javascript telnet exampl
e.com
- 调试网络问题telnet可以用来检查网络连接是否正常。例如,检查是否可以连接到某个端口:
代码语言:javascript代码运行次数:0运行复制javascript telnet example.com 25
如果连接失败,可能表示网络问题或目标端口未开放。
# linux
# 浏览器
# 工具
# 百度
# 网络编程
# 区别
# 网络问题
# JavaScript
# String
# Resource
# include
# const
# 字符串
# bool
# int
# void
# using
# class
# public
# private
# Namespace
# this
# ASCII
# 算法
# http
# https
# ssl
# 加密算法
# 客户端
# 的是
# 端口号
# 它是
# 不被
# 连接到
# 可以用来
# 过程中
# 远程登录
# 在这个
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
深圳网站制作的公司有哪些,dido官方网站?
Laravel怎么实现支付功能_Laravel集成支付宝微信支付
网站优化排名时,需要考虑哪些问题呢?
js实现点击每个li节点,都弹出其文本值及修改
iOS验证手机号的正则表达式
Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧
Zeus浏览器网页版官网入口 宙斯浏览器官网在线通道
VIVO手机上del键无效OnKeyListener不响应的原因及解决方法
佛山网站制作系统,佛山企业变更地址网上办理步骤?
Laravel如何与Pusher实现实时通信?(WebSocket示例)
宙斯浏览器怎么屏蔽图片浏览 节省手机流量使用设置方法
Laravel广播系统如何实现实时通信_Laravel Reverb与WebSockets实战教程
Android使用GridView实现日历的简单功能
Laravel如何实现数据导出到PDF_Laravel使用snappy生成网页快照PDF【方案】
轻松掌握MySQL函数中的last_insert_id()
如何快速生成橙子建站落地页链接?
标准网站视频模板制作软件,现在有哪个网站的视频编辑素材最齐全的,背景音乐、音效等?
使用C语言编写圣诞表白程序
如何获取免费开源的自助建站系统源码?
JavaScript中的标签模板是什么_它如何扩展字符串功能
韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南
Laravel怎么进行浏览器测试_Laravel Dusk自动化浏览器测试入门
Linux网络带宽限制_tc配置实践解析【教程】
,交易猫的商品怎么发布到网站上去?
如何在橙子建站中快速调整背景颜色?
如何用已有域名快速搭建网站?
Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】
Laravel如何实现多对多模型关联?(Eloquent教程)
Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势
如何在阿里云虚拟服务器快速搭建网站?
微信小程序 闭包写法详细介绍
Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧
如何在沈阳梯子盘古建站优化SEO排名与功能模块?
制作无缝贴图网站有哪些,3dmax无缝贴图怎么调?
在线教育网站制作平台,山西立德教育官网?
Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
HTML5打空格有哪些误区_新手常犯的空格使用错误【技巧】
实例解析angularjs的filter过滤器
Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解
如何挑选最适合建站的高性能VPS主机?
如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】
Windows Hello人脸识别突然无法使用
安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出
在线ppt制作网站有哪些软件,如何把网页的内容做成ppt?
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
如何快速上传自定义模板至建站之星?
HTML透明颜色代码怎么让下拉菜单透明_下拉菜单透明背景指南【技巧】
php 三元运算符实例详细介绍
QQ浏览器网页版登录入口 个人中心在线进入


e.com