首页
学习
活动
专区
工具
TVP
发布

Golang语言社区

Golang语言社区(www.Golang.LTD)专业分享Go语言基础、提高等最新最前沿动态。
专栏作者
1903
文章
2783758
阅读量
585
订阅数
for-loop 与 json.Unmarshal 性能分析概要
在项目中,常常会遇到循环交换赋值的数据处理场景,尤其是 RPC,数据交互格式要转为 Protobuf,赋值是无法避免的。一般会有如下几种做法:
李海彬
2019-05-08
9610
Go Reflect 性能
Go reflect包提供了运行时获取对象的类型和值的能力,它可以帮助我们实现代码的抽象和简化,实现动态的数据获取和方法调用, 提高开发效率和可读性, 也弥补Go在缺乏泛型的情况下对数据的统一处理能力。
李海彬
2019-03-07
9460
使用golang 实现JSON-RPC2.0
远程过程调用(英语:Remote Procedure Call,缩写为 RPC)是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程。如果涉及的软件采用面向对象编程,那么远程过程调用亦可称作远程调用或远程方法调用。
李海彬
2018-07-26
1.9K0
Go语言开发RESTFul JSON API
也许我们之前有使用过各种各样的API, 当我们遇到设计很糟糕的API的时候,简直感觉崩溃至极。希望通过本文之后,能对设计良好的RESTful API有一个初步认识。
李海彬
2018-07-26
2.6K0
Go微服务 - 构建我们的第一个服务
虽然通过HTTP提供JSON服务不是内部服务和外部服务的唯一选择,但本文聚焦的是HTTP和JSON. 使用RPC机制和二进制消息格式(例如Protocol Buffer)也用于内部通信或外部通信也是非常有趣的,特别是当外部消费者属于另外一个系统的时候。Go语言有内置的RPC支持,并且gRPC也是完全值得看看的。 然而,我们现在只聚焦基于由http包和Gorilla Web Toolkit提供的HTTP。
李海彬
2018-07-26
1.3K0
关于JSON.stringify和Unicode编码,需要注意的几点
1JSON.stringify会自动把所要转换内容中的汉字转换为Unicode编码 2浏览器间有差别,个别浏览器会把将要提交表单内容中的Unicode编码自动转为汉字(Chrome自动转换,IE不转) 3Web服务器,可能也有区别对待,其他的不清楚,IIS5不转换,IIS7自动转换(题外话,IIS5不支持SSI指令,IIS7支持)。 浏览器—1—提交表单——Web服务器—2—asp解析器 Chrome在1处,在表单提交到服务器前转码。 IIS7在2处在把表单数据交给asp解析器前转码。 用JSON.st
李海彬
2018-03-27
1.4K0
关于JSON.stringify和Unicode编码,需要注意的几点
1JSON.stringify会自动把所要转换内容中的汉字转换为Unicode编码 2浏览器间有差别,个别浏览器会把将要提交表单内容中的Unicode编码自动转为汉字(Chrome自动转换,IE不转) 3Web服务器,可能也有区别对待,其他的不清楚,IIS5不转换,IIS7自动转换(题外话,IIS5不支持SSI指令,IIS7支持)。 浏览器—1—提交表单——Web服务器—2—asp解析器 Chrome在1处,在表单提交到服务器前转码。 IIS7在2处在把表单数据交给asp解析器前转码。 用JSON.st
李海彬
2018-03-27
2.1K0
go语言中json转成map结构
package main import ( "encoding/json" "fmt" ) //把请求包定义成一个结构体 type Requestbody struct { req string } //以指针的方式传入,但在使用时却可以不用关心 // result 是函数内的临时变量,作为返回值可以直接返回调用层 func (r *Requestbody) Json2map() (s map[string]interface{}, err error) { var resu
李海彬
2018-03-27
7350
在Go语言中使用JSON
Encode 将一个对象编码成JSON数据,接受一个interface{}对象,返回[]byte和error: func Marshal(v interface{}) ([]byte, error) Marshal函数将会递归遍历整个对象,依次按成员类型对这个对象进行编码,类型转换规则如下: bool类型 转换为JSON的Boolean 整数,浮点数等数值类型 转换为JSON的Number string 转换为JSON的字符串(带""引号) struct 转换为JSON的Object,再根据各个成员的类
李海彬
2018-03-26
9080
go语言中json转成map结构
package main import ( "encoding/json" "fmt" ) //把请求包定义成一个结构体 type Requestbody struct { req string } //以指针的方式传入,但在使用时却可以不用关心 // result 是函数内的临时变量,作为返回值可以直接返回调用层 func (r *Requestbody) Json2map() (s map[string]interface{}, err error) { var resu
李海彬
2018-03-26
7560
动手实现一个JSON验证器(上)
分析 既然要验证JSON的有效性,那么必然需要清楚的知道JSON格式,这个在JSON官网已经给我们画出来了: 从官方的图上面可以看出,JSON的组成一共有五部分: object: 以左大括号({)开头
李海彬
2018-03-26
1.4K0
go语言json操作指南
1、Go语言的JSON 库   Go语言自带的JSON转换库为 encoding/json 1.1)其中把对象转换为JSON的方法(函数)为 json.Marshal(),其函数原型如下 func Marshal(v interface{}) ([]byte, error)     也就是说,这个函数接收任意类型的数据 v,并转换为字节数组类型,返回值就是我们想要的JSON数据和一个错误代码。当转换成功的时候,这个错误代码为nil     在进行对象转换为 JSON 的过程中,会遵循如下几条规则:  
李海彬
2018-03-26
1.3K0
golang 使用json 包 实现序列化
package main import ( "encoding/json" "fmt" ) func main() { //初始化 data := make(map[string]interface{}, 1) data["name"] = "xiaochuan" data["age"] = 23 //序列化 json_obj, err := json.Marshal(data) if err != nil { fmt.Println("err :", err) } mar
李海彬
2018-03-26
7630
go语言中json转成map结构
package main import ( "encoding/json" "fmt" ) //把请求包定义成一个结构体 type Requestbody struct { req string } //以指针的方式传入,但在使用时却可以不用关心 // result 是函数内的临时变量,作为返回值可以直接返回调用层 func (r *Requestbody) Json2map() (s map[string]interface{}, err error) { var resu
李海彬
2018-03-22
3.3K0
Go语言核心之美 -JSON
JSON(JavaScript Object Notation)是一种发送和接收结构化信息的标准化表示法。类似的标准化协议还有XML、ASN.1、Protobuf、Thrift等等,这些协议都有自己的鲜明特色,但是由于JSON的简洁、可读、流行性,因此它是应用最广泛的协议之一。 Go语言对上述协议的编码和解码都有很好的支持,例如标准库中的encoding/json、encoding/xml、encoding/asn1以及第三方库github.com/golang/protobuf,这些包提供的API接口都
李海彬
2018-03-22
1.4K0
Go语言服务器开发实现最简单HTTP的GET与POST接口
本文实例讲述了Go语言服务器开发实现最简单HTTP的GET与POST接口。分享给大家供大家参考。具体分析如下: Go语言提供了http包,可以很轻松的开发http接口。以下为示例代码: 代码如下: package webserver import ( "encoding/json" "fmt" "net/http" "time" ) func WebServerBase() { fmt.Println("This is webs
李海彬
2018-03-22
2K0
轻量级交互数据json格式初探
什么是 JSON ? JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation) JSON 是轻量级的文本数据交换格式 JSON 独立于语言 * JSON 具有自我描述性,更易理解 * JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。 JSON 语法是 JavaScript 语法的子集。 为什么要用json 在异步应用程序中发送和接收信息时,可以选择以纯文本
李海彬
2018-03-22
1K0
Golang语言--反射的用处--代码自动生成
背景: go语言处理db、json的时候,具体代码的变量定义和db字段、json输出的时候可能不一样。 这个时候,我们需要用tag的方式来进行定义。 例如: 如果字段或结构体非常多的话,有十几二十几个
李海彬
2018-03-21
1.3K0
关于Golang语言,自定义结构体标签的一个妙用
运行结果是: 编码前: {fyxichen 24} 编码后: {"Age":24}在这里name的值并未被编码,原因接收首字母是小写,外部不能调用导致的. 当我们用json和外部API进行交互的时候,别的程序语言不像Go这样用大小写来控制变量的作用域.所以下面这个标签的使用,会用起来更舒服. 运行结果: Struct1 :{"Name":"fyxichen","Age":24} Struct2 :{"name":"fyxichen","age":24}
李海彬
2018-03-21
7090
Golang语言-操作json,注意json的嵌套、数组
package main import ( "encoding/json" "fmt" "os" ) type ConfigStruct struct { Host string `json:"host"` Port int `json:"port"` AnalyticsFile string `json:"analytics_file"` StaticFileVersion int `json:"static_file
李海彬
2018-03-21
5.5K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档