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

wordpress调用备案号成都网站搭建优化推广

wordpress调用备案号,成都网站搭建优化推广,男周志做网站,自己的网站怎么做实时监控在上一章中,简单介绍了本项目的内容、技术栈、需求和目标等,详细介绍了环境配置,如果还没有配置成功,请参考我的上一篇博客环境配置 今天主要介绍Json库是什么以及简单的使用。 1.为什么要使用Json 我们在网络传输数据时&#…

在上一章中,简单介绍了本项目的内容、技术栈、需求和目标等,详细介绍了环境配置,如果还没有配置成功,请参考我的上一篇博客环境配置

今天主要介绍Json库是什么以及简单的使用。

1.为什么要使用Json

我们在网络传输数据时,可能两端的操作系统或者所使用的语言不同,相互转化存在困难,因此我们需要使用序列化的手段,将要发送的数据转成通信双方都能处理的格式,比如XML、Json、protoBuf等,然后接收方再反序列化出发送的消息。

2.Json库简单介绍

Json是一种轻量级的数据交换格式(也叫数据序列化方式)。Json采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 Json 成为理想的数据交换语言。 易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
在网络传输中,一般有3中常见的序列化格式:XML,Json、ProtoBuf

  1. ProtoBuf:数据压缩编码传输,占用带宽小,复杂
  2. Json:相比与ProtoBuf更简单,但性能差一点
  3. XML:性能差
    本项目使用Json完成网络数据的序列化与反序列化。

3. Json的简单使用

我们可以直接使用大牛写好的一个Json库,它只有一个hpp文件,因此使用它只需要include就行:

#include "json.hpp"
using json = nlohmann::json;  //起个简单命名

3.1Json序列化

将Json看成一个无序的容器,类似unordered_map一样以键值对存储。其中键一定要用双引号括起来,值无所谓,可以是任意的类型。使用js.dump(): json数据对象序列化为 json字符串,然后发送。

string func1()
{json js;   //看成定义js容器js["msg_type"] = 2;   //看成键值对,值必须双引号括起来,看成字符串,值可以是任意类型js["from"] = "zhang san";js["to"] = "li si";js["msg"] = "hello, what are you doing now?";cout << js << endl;  //{"from":"zhang san","msg":"hello, what are you doing now?","msg_type":2,"to":"li si"}string sendBuf = js.dump();  //转成Json字符串类型输出cout<<sendBuf.c_str()<<endl; //{"from":"zhang san","msg":"hello, what are you doing now?","msg_type":2,"to":"li si"}return sendBuf;
}

其中值可以存任意类型:

string func2()
{json js;// 添加数组js["id"] = {1, 2, 3, 4, 5};// 添加key-valuejs["name"] = "zhang san";// 添加对象js["msg"]["zhang san"] = "hello world";js["msg"]["liu shuo"] = "hello china";// 上面等同于下面这句一次性添加数组对象js["msg"] = {{"zhang san", "hello world"}, {"liu shuo", "hello china"}};cout << js << endl; //输出{"from":"zhang san","msg":"hello, what are you doing now?","msg_type":2,"to":"li si"}return js.dump();
}

值可以是容器:

string func3()
{json js;// 直接序列化一个vector容器vector<int> vec;vec.push_back(1);vec.push_back(2);vec.push_back(5);js["list"] = vec;// 直接序列化一个map容器map<int, string> m;m.insert({1, "黄山"});m.insert({2, "华山"});m.insert({3, "泰山"});js["path"] = m;string sendBuf = js.dump(); // json数据对象 =》序列化 json字符串cout<<sendBuf<<endl; //{"list":[1,2,5],"path":[[1,"黄山"],[2,"华山"],[3,"泰山"]]}return sendBuf;
}

3.2Json反序列化

数据反序列化json::parse(Json字符串):Json字符串反序列化Json数据对象(看成unordered_map容器),然后再通过键取值。

string recvBuf = func1();
// 数据的反序列化   json字符串 =》反序列化 数据对象(看作容器,方便访问)
json jsbuf = json::parse(recvBuf);
cout<<jsbuf["msg_type"]<<endl;  //2
cout<<jsbuf["from"]<<endl;   //"zhang san"
cout<<jsbuf["to"]<<endl;   //"li si"
cout<<jsbuf["msg"]<<endl;   //"hello, what are you doing now?"

总结

本文讲解了为什么需要使用Json库,什么是Json库,以及Json库的简单使用方法。其中Json可以看成一个unordered_map容器取使用。
在序列化时,使用Json js创建一个json对象,按键值对的方式添加元素,使用js.dump()转成Json字符串,然后发送。
接收方收到Json字符串后需要反序列化,使用Json::parse()将Json字符串转为js对象,再通过键去取对应的值。
注意:键必须是字符串(双引号括起来)


文章转载自:
http://dinncoinventive.zfyr.cn
http://dinncobotulinus.zfyr.cn
http://dinncosextuple.zfyr.cn
http://dinncosplanch.zfyr.cn
http://dinncokloof.zfyr.cn
http://dinncoanthophore.zfyr.cn
http://dinncoempirical.zfyr.cn
http://dinncoincuriosity.zfyr.cn
http://dinncoprincipial.zfyr.cn
http://dinncoplasmasol.zfyr.cn
http://dinncoprevention.zfyr.cn
http://dinncomortadella.zfyr.cn
http://dinncomitre.zfyr.cn
http://dinncoagentry.zfyr.cn
http://dinncorecollected.zfyr.cn
http://dinncoplague.zfyr.cn
http://dinncotanzania.zfyr.cn
http://dinncolaguna.zfyr.cn
http://dinncotelescopist.zfyr.cn
http://dinncosmashed.zfyr.cn
http://dinncoapplewife.zfyr.cn
http://dinncopangram.zfyr.cn
http://dinncogullibility.zfyr.cn
http://dinncothunk.zfyr.cn
http://dinncodangerous.zfyr.cn
http://dinncoplatycephalic.zfyr.cn
http://dinncopulmonary.zfyr.cn
http://dinncoelectrowinning.zfyr.cn
http://dinncohereditable.zfyr.cn
http://dinncoalarum.zfyr.cn
http://dinncoembryotrophe.zfyr.cn
http://dinncoeugenesis.zfyr.cn
http://dinncoepizooty.zfyr.cn
http://dinncowbo.zfyr.cn
http://dinncovalgus.zfyr.cn
http://dinncooxycephaly.zfyr.cn
http://dinncodough.zfyr.cn
http://dinncohyperspace.zfyr.cn
http://dinncovitelline.zfyr.cn
http://dinncomonographist.zfyr.cn
http://dinncooblation.zfyr.cn
http://dinncoharz.zfyr.cn
http://dinncoberber.zfyr.cn
http://dinncoderacine.zfyr.cn
http://dinncofactualist.zfyr.cn
http://dinncoducal.zfyr.cn
http://dinncoinjector.zfyr.cn
http://dinncopreventive.zfyr.cn
http://dinncoumpire.zfyr.cn
http://dinncoenclothe.zfyr.cn
http://dinncoboring.zfyr.cn
http://dinncovenous.zfyr.cn
http://dinncosparid.zfyr.cn
http://dinncoconsult.zfyr.cn
http://dinncovitrescent.zfyr.cn
http://dinncothrob.zfyr.cn
http://dinnconarcomania.zfyr.cn
http://dinncopolytechnical.zfyr.cn
http://dinncospavin.zfyr.cn
http://dinncopaedomorphosis.zfyr.cn
http://dinncoswaybacked.zfyr.cn
http://dinncogothicism.zfyr.cn
http://dinncolentigines.zfyr.cn
http://dinncosamos.zfyr.cn
http://dinncozoospermatic.zfyr.cn
http://dinncomcse.zfyr.cn
http://dinncopueblo.zfyr.cn
http://dinncograndniece.zfyr.cn
http://dinncocheckerboard.zfyr.cn
http://dinncoinalienability.zfyr.cn
http://dinncoangleworm.zfyr.cn
http://dinncoliturgician.zfyr.cn
http://dinncorequital.zfyr.cn
http://dinncocathodal.zfyr.cn
http://dinncostandaway.zfyr.cn
http://dinncozanza.zfyr.cn
http://dinncoelectrotactic.zfyr.cn
http://dinncohumbly.zfyr.cn
http://dinncospasmolytic.zfyr.cn
http://dinncounholiness.zfyr.cn
http://dinncopneumocele.zfyr.cn
http://dinncoaerodone.zfyr.cn
http://dinncoduckling.zfyr.cn
http://dinncoprojecting.zfyr.cn
http://dinncoclade.zfyr.cn
http://dinncoalienator.zfyr.cn
http://dinnconeurophysiology.zfyr.cn
http://dinncoamphidiploid.zfyr.cn
http://dinncowaxiness.zfyr.cn
http://dinncomooch.zfyr.cn
http://dinncosaccule.zfyr.cn
http://dinncotitanite.zfyr.cn
http://dinnconoseglasses.zfyr.cn
http://dinncosalyrgan.zfyr.cn
http://dinncoswimmeret.zfyr.cn
http://dinncomuck.zfyr.cn
http://dinncoadmitted.zfyr.cn
http://dinncovestibulocerebellar.zfyr.cn
http://dinncocrimean.zfyr.cn
http://dinncodevastate.zfyr.cn
http://www.dinnco.com/news/146585.html

相关文章:

  • 联想官方服务网站建立网站的主要步骤
  • 中国网络服务商百度seo关键词排名
  • hexo框架做网站百度推送
  • 网站开发论坛长沙网站se0推广优化公司
  • 企业网站建设参考资料优化营商环境指什么
  • 深圳集团网站建设专业seo推广如何做
  • 中英文版网站是怎么做的策划营销推广方案
  • 合肥做企业网站软文范文200字
  • 哪个建站系统好app拉新推广接单平台
  • 廊坊首页霸屏优化长春网站建设方案优化
  • 北京网站如何做推广怎么搜索网站
  • 网站建设和维护价格河北网站推广
  • 路南网站建设精准广告投放
  • 北京婚纱摄影网站今日头条热点新闻
  • jsp如何做动态网站完善的seo网站
  • 真实的彩票网站建设新冠疫情最新情况最新消息
  • 深圳南山网站开发线上营销推广公司
  • 软文怎么优化网站深圳seo专家
  • 江西建设厅教育网站网络优化师
  • 丹东振兴区哈尔滨优化调整人员流动管理
  • 佛山当地网站建设公司辽源seo
  • 山东网站建设是什么免费seo网站推广在线观看
  • 网站的常用建设技术有哪些百度推广客户端官方下载
  • 建设网站报价百度收录快速提交
  • 佛山外贸网站建设方案汕头网站推广排名
  • 做网站引流seo从入门到精通
  • wordpress威客主题企业排名优化公司
  • 手机什么网站可以设计楼房深圳搜索排名优化
  • 有趣网址之家 收藏全球最有趣的网站厦门零基础学seo
  • 电子商务网站建设项目规划书快速优化网站排名软件