当前位置: 首页 > news >正文

网站维护要多久时间百度网盘怎么提取别人资源

网站维护要多久时间,百度网盘怎么提取别人资源,中燃oa企业门户,织梦网站怎么做安全措施文章目录 1 HTTP协议简介1.1 HTTP协议的历史和发展1.2 HTTP协议的特点1.3 HTTP的工作过程1.4 请求报文1.5 响应报文 2 使用Qt进行HTTP通信2.1 Qt的HTTP通信类2.2 HTTP通信过程 3 JSON3.1 cJSON库简介3.2 cJSON库的设计思想和数据结构3.3 cJSON库的使用方法 1 HTTP协议简介 1.1…

文章目录

  • 1 HTTP协议简介
    • 1.1 HTTP协议的历史和发展
    • 1.2 HTTP协议的特点
    • 1.3 HTTP的工作过程
    • 1.4 请求报文
    • 1.5 响应报文
  • 2 使用Qt进行HTTP通信
    • 2.1 Qt的HTTP通信类
    • 2.2 HTTP通信过程
  • 3 JSON
    • 3.1 cJSON库简介
    • 3.2 cJSON库的设计思想和数据结构
    • 3.3 cJSON库的使用方法

1 HTTP协议简介

1.1 HTTP协议的历史和发展

HTTP诞生于1991年,最初的版本号是0.9。1996年,HTTP/1.0诞生,增加了HEAD、POST等方法,增加了响应状态码并引入了HTTP Header(HTTP头部)。1999年推出的HTTP/1.1引入了长连接、并发连接、管道机制等。2015年,发布了HTTP/2,默认不再使用ASCII编码传输数据,而是改为传输二进制数据。HTTP/2在发送请求时会将每个请求的内容封装成带有编号的帧,然后同时发送。这种利用一个连接来发送多个请求的方式称为“多路复用”。2018年发布了HTTP/3。HTTP/3将底层依赖的TCP协议改成了UDP协议。

1.2 HTTP协议的特点

HTTP协议是基于请求与响应模式的、无状态的协议。请求由客户端发起,服务端响应请求。无状态指在客户端和服务端交互完成后,两者之间不会保留任何状态信息。HTTP协议的通信方式简单、灵活,具有很好的可扩展性。

1.3 HTTP的工作过程

(1)建立TCP连接。
解析服务器的域名,得到服务器IP地址。然后和服务器建立TCP连接。
(2)浏览器向服务器发送HTTP请求。包括客户端需要的文档信息和Accept、User-Agent等附加信息。
(3)服务器应答。应答内容包括HTTP协议的版本号、应答状态码、被请求的文档内容等。
(4)服务器关闭HTTP连接。
(5)重复2~4步,浏览器请求并接收服务器应答的HTML、CSS、JS、图片等文档、进行页面渲染,或者将接收到应答文件进行保存。
(6)服务器关闭TCP连接。当服务器决定不再与浏览器通信时,就会关闭TCP连接。

1.4 请求报文

HTTP/1.1的请求报文由四部分构成。请求行包括请求方法、URL和协议版本。头部位于请求行之后,每一行都包含一个头部字段名和对应的值。实体是请求报文的数据,在POST方法中使用。如果请求方法为GET,那么请求数据为空。实体与头部之间用一个空行分隔。报文中的空格、回车符和换行符均不可省略。
请求方法是客户端通过请求方法向服务器说明自己的意图的方式,常用的有GET、POST、PUT、DELETE等方法。
头部由一系列的“字段:值”构成,起到了传递额外信息的作用。

1.5 响应报文

服务器收到请求报文后,就会做出响应并发送响应报文。响应报文在结构上与请求报文几乎完全一致,只是个别字段的作用不同。
响应报文由三部分构成。状态行包括协议版本、状态码和状态短语。头部与请求报文中的头部类似,由一系列的“字段:值”构成,起到了传递额外信息的作用。实体是响应报文的数据,在GET方法中使用。实体与头部之间用一个空行分隔。报文中的空格、回车符和换行符均不可省略。

2 使用Qt进行HTTP通信

2.1 Qt的HTTP通信类

Qt的网络模块提供了HTTP通信类QNetworkRequestQnetworkAccessManagerQNetworkReply。要使用这些类,需要在项目的pro文件中引用network模块:
QT += network
并在源文件中引用头文件:

#include <QNetworkRequest>
#include <QNetworkAccessManager> 
#include <QNetworkReply>

2.2 HTTP通信过程

使用这几个类进行HTTP通信的过程可以分为三步:
(1) 使用QNetworkRequest类对象创建网络请求。
(2) 使用QNetworkAccessManager类对象执行网络通信。QNetworkAccessManager类对象用于管理程序的HTTP通信,提供了get()、post()、put()等多个函数,分别对应于HTTP协议的GET、POST、PUT等方法。调用这些函数会返回一个QNetworkReply对象,里面保存着服务器的响应数据。一个程序只要有一个QnetworkAccessManager类对象即可。QNetworkAccessManager类还提供了一些信号,如收到服务器响应的finished()信号,网络状态发生改变的networkAccessibleChanged()信号等。
(3) 通过QNetworkReply接收服务器响应。
QNetworkAccessManager类对象会将服务器的响应报文保存在一个QNetworkReply类对象中,并通过信号finished(QNetworkReply*)将这个QNetworkReply类对象的指针发射出去。QNetworkReply类也是QIODevice的子类,可以像操作串口一样调用read()函数读取服务器返回的信息。QNetworkReply类还提供了finished()、readyRead()等信号,可以根据信号执行相应的操作。

3 JSON

JSON是一种轻量级的数据交换格式,它采用完全独立于编程语言的文本格式来存储和表示数据,可以高效地传递大量数据。
JSON的数据类型

(1)数值:即十进制数,如12、3.14、5.2e4等。在JSON中,数值可以为负数,可以有小数部分,还可以用e或者E表示指数部分,但是不能有前导0。JSON不区分整数与浮点数。

(2)字符串:即以英文双引号包围起来的零个或多个Unicode字符,如"Hello"或""。

(3)布尔值:即true或者false。JSON的布尔值必须是小写字母。

(4)数组:即有序的零个或者多个值,每个值可以为任意类型。数组使用英文方括号包围起来,元素之间用英文逗号分隔,如:[“aa”, “bb”, “cc”]、[[3, 1], [4, 1], [5, 9]]等。

(5)对象:对象以英文花括号包围起来,内部包含若干无序的键-值对。不同键值对之间使用逗号分隔。键只能是字符串,值可以是上述各种类型的数据,也可以是另一个对象(即对象的嵌套)。

3.1 cJSON库简介

cJSON是一个使用C语言编写的JSON操作库,具有轻便、可移植、单文件的特点,可以方便地生成、解析JSON数据。cJSON库的源码文件只有两个,即cJSON.h和cJSON.c。使用时只需将这两个文件添加到工程即可。

3.2 cJSON库的设计思想和数据结构

cJSON在生成和解析JSON数据时,不是将一整段JSON数据作为整体进行处理,而是将整个JSON数据拆分成了一个一个的键值对。每个键值对都保存在一个cJSON结构体中。按照JSON数据的层次关系,处于同一级的cJSON结构体组成双向链表,不同级的链表之间通过指针连接。

3.3 cJSON库的使用方法

cJSON库提供了一系列API来生成和解析JSON数据。其中,生成JSON数据的API包括cJSON_CreateObject()cJSON_CreateArray()cJSON_CreateString()cJSON_CreateNumber()等;解析JSON数据的API包括cJSON_Parse()cJSON_GetObjectItem()cJSON_GetArraySize()等。使用cJSON库,可以方便地在C语言中处理JSON数据。

http://www.ds6.com.cn/news/15226.html

相关文章:

  • 北京网站建设公司分形搜索网站哪个好
  • 新闻热点事件2023最新什么是seo教程
  • 网站配置文件在哪里怎么自己注册网站
  • 和文化有关的吉网站建设模板电视剧百度搜索风云榜
  • 北京建网站服务2022年7到8月份的十大新闻
  • 浅谈做网站的好处外链网
  • php做网站技术爱站seo
  • 福州医院网站建设公司百度一下官方网站
  • 南通做企业网站搜索引擎营销成功的案例
  • 网站建设公司是什么百度快照怎么看
  • 三河网站建设亚马逊seo关键词优化软件
  • 温岭建设局网站百度建一个网站多少钱
  • 根据图片做网站用什么百度网页推广怎么做
  • 企业官方网站怎么做鄂尔多斯seo
  • 34线城市做网站推广长沙企业关键词优化
  • 中纪委网站两学一做 重拾自信百度seo培训班
  • 南阳南阳新区网站建设汕头seo优化培训
  • 导购 网站模板打开免费百度啊
  • 重庆推广网站排名价格成都外贸seo
  • win8metro ui风格的wordpress安卓手机优化神器
  • 网站建设插入歌曲西安最新消息今天
  • 网站国内空间和国外空间上海百度推广电话
  • 南京 网站设计软广告经典案例
  • 建设一个属于自己网站系统优化大师免费版
  • 做网站推广员必备的条件竞价排名什么意思
  • 如何把自己做的网站挂网上大数据营销成功案例
  • 无锡市建设工程质监站网站怎么做自媒体
  • 上海做网站找谁互联网营销策划是做什么的
  • 南海建设工程交易中心网站石家庄百度seo
  • 怎么做网站的推广商丘seo外包