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

golang []byte转json和json转[]byte

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

json转[]byte

paymentData := WxPayData{
		ApiKey: __notify.ApiKey,
		Appid:  __notify.Data.Appid,
		MchId:  __notify.Data.MchId,
	}
	paymentDataBuf, _ := json.Marshal(&paymentData)

上图中的paymentData是一个json结构,使用json.Marshal转换完之后的paymentDataBuf是一个[]byte结构

 

[]byte转json

data := goo.NewHttp().SetUrl(__sns_oauth2_url).Get()

	__snsOauth2Response := snsOauth2Response{}
	if err := json.Unmarshal(data, &__snsOauth2Response); err != nil {
		return nil, err
	}

首先定义了一个json结构,如上图中的__snsOauth2Response,他的具体结构如下

type snsOauth2Response struct {
	AccessToken  string        `json:"access_token"`
	ExpireIn     time.Duration `json:"expire_in"`
	Openid       string        `json:"openid"`
	Unionid      string        `json:"unionid"`
	RefreshToken string        `json:"refresh_token"`
	Scope        string        `json:"scope"`
}

然后用json.Unmarshal把[]byte类型的data转换成json结构的__snsOauth2Response,记得要加指针&

定义的结构除了struct,也可以是map[string]string,或者interface{}

转载于:https://my.oschina.net/u/3491770/blog/3007818

相关文章:

  • C语言近程型(near)和远程型(far)的区别是什么?
  • 机器学习PAI全新功效——实时新闻热点Online Learning实践
  • 浅谈跨国网络传输
  • CNCF TOC现首张中国面孔,谁说云厂商是开源宿敌?
  • 微软私有云分享(R2)27维护窗口的使用
  • 神仙打架?苹果短暂撤销 Facebook 和 Google 的企业证书
  • Oracle网络公开课《请搭载我们的雷霆战机进行跨平台的数据迁移-可传输表空间》...
  • Python代码面试必读 - Data Structures and Algorithms in Python
  • 阿里云包年包月服务器如何退款
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • linux正则
  • BSON与JSON的区别
  • 【译】分页技术简介
  • Docker学习笔记_安装和使用Redis
  • 【转载】android软键盘的一些控制
  • 【跃迁之路】【519天】程序员高效学习方法论探索系列(实验阶段276-2018.07.09)...
  • ES2017异步函数现已正式可用
  • Laravel Telescope:优雅的应用调试工具
  • Laravel核心解读--Facades
  • Mac 鼠须管 Rime 输入法 安装五笔输入法 教程
  • spring-boot List转Page
  • thinkphp5.1 easywechat4 微信第三方开放平台
  • vuex 笔记整理
  • WebSocket使用
  • 道格拉斯-普克 抽稀算法 附javascript实现
  • 工作手记之html2canvas使用概述
  • 函数式编程与面向对象编程[4]:Scala的类型关联Type Alias
  • 基于 Ueditor 的现代化编辑器 Neditor 1.5.4 发布
  • 前端路由实现-history
  • 山寨一个 Promise
  • 硬币翻转问题,区间操作
  • TPG领衔财团投资轻奢珠宝品牌APM Monaco
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • #AngularJS#$sce.trustAsResourceUrl
  • #Linux(Source Insight安装及工程建立)
  • (1)(1.19) TeraRanger One/EVO测距仪
  • (1)Nginx简介和安装教程
  • (175)FPGA门控时钟技术
  • (6)添加vue-cookie
  • (二)windows配置JDK环境
  • (二)什么是Vite——Vite 和 Webpack 区别(冷启动)
  • (十五)使用Nexus创建Maven私服
  • (转)EXC_BREAKPOINT僵尸错误
  • (转)winform之ListView
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .[backups@airmail.cc].faust勒索病毒的最新威胁:如何恢复您的数据?
  • .NET 将混合了多个不同平台(Windows Mac Linux)的文件 目录的路径格式化成同一个平台下的路径
  • .NET开发不可不知、不可不用的辅助类(一)
  • .net开源工作流引擎ccflow表单数据返回值Pop分组模式和表格模式对比
  • .net之微信企业号开发(一) 所使用的环境与工具以及准备工作
  • /dev/sda2 is mounted; will not make a filesystem here!
  • @angular/cli项目构建--Dynamic.Form
  • @Transactional 竟也能解决分布式事务?
  • @zabbix数据库历史与趋势数据占用优化(mysql存储查询)
  • [ vulhub漏洞复现篇 ] Apache APISIX 默认密钥漏洞 CVE-2020-13945