所以我尝试了一些基于我代码中的例子的东西,没有得到数据,但也没有错误。代码是:
import (
"io"
"fmt"
"net/http"
"encoding/json"
)
type Credential struct {
username string `json:"username"`
password string `json:"password"`
}
func login(res http.ResponseWriter, req *http.Request) {
if req.Method == "POST" {
cred := Credential{}
err := json.NewDecoder(req.Body).Decode(&cred)
if err != nil {
panic("can't decode")
}
fmt.Println("credentials: " + cred.username + " , " + cred.password)
}
}
我用测试
Curl-X POST-H"接受:应用程序/json"--data"{\"用户名\":\"x\",\"密码\":\"y\"}"127.0.0.1:8000/login-i
服务器会打印出:
证书:,
为什么cred.usernamecred.password?
golang使用字段的第一个字符为该结构声明public或private。因此,将用户名
更改为用户名
本文向大家介绍Go语言method详解,包括了Go语言method详解的使用技巧和注意事项,需要的朋友参考一下 前面两章我们介绍了函数和struct,那你是否想过函数当作struct的字段一样来处理呢?今天我们就讲解一下函数的另一种形态,带有接收者的函数,我们称为method method 现在假设有这么一个场景,你定义了一个struct叫做长方形,你现在想要计算他的面积,那么按照我们一般的思路应
本文向大家介绍Go语言interface详解,包括了Go语言interface详解的使用技巧和注意事项,需要的朋友参考一下 interface Go语言里面设计最精妙的应该算interface,它让面向对象,内容组织实现非常的方便,当你看完这一章,你就会被interface的巧妙设计所折服。 什么是interface 简单的说,interface是一组method的组合,我们通过interface
本文向大家介绍在Go语言中使用JSON的方法,包括了在Go语言中使用JSON的方法的使用技巧和注意事项,需要的朋友参考一下 Encode 将一个对象编码成JSON数据,接受一个interface{}对象,返回[]byte和error: Marshal函数将会递归遍历整个对象,依次按成员类型对这个对象进行编码,类型转换规则如下: bool类型 转换为JSON的Boolean 整数,浮点数等数值类型
本文向大家介绍详解Go语言中for range的"坑",包括了详解Go语言中for range的"坑"的使用技巧和注意事项,需要的朋友参考一下 前言 Go 中的for range组合可以和方便的实现对一个数组或切片进行遍历,但是在某些情况下使用for range时很可能就会被"坑",下面用一段代码来模拟下: 代码解析: 创建一个int slice,变量名为arr1并初始化 1,2,3 作为切片的值
本文向大家介绍详解go语言的并发,包括了详解go语言的并发的使用技巧和注意事项,需要的朋友参考一下 1、启动go语言的协程 2、runtime.Goexit()方法。立即终止当前的协程 3、runtime.GOMAXPROCS()表示go使用几个cpu执行代码 4、管道定义和创建管道 5、管道的缓冲 6、关闭管道和接受关闭管道的信号 7、只读管道和只写管道和生产者和消费者模型 8、Timer定时器
在线程不安全的 map 中我们学习了 map 的遍历,里面使用了一个叫 range 的关键字来对 map 进行遍历操作。当时还提到了切片和数组都可以使用这个方法遍历。本文就来详细学习一下 range 关键字的用法。 Tips:本文提及的 map 均是线程不安全的 map。线程安全的 map 及其遍历方法参照 Go 语言中的map 一文。 1. 基本用法 range 可以用来遍历的对象有数组、切片、