gin-基础笔记

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

提示:这里可以添加本文要记录的大概内容:

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。


提示:以下是本篇文章正文内容,下面案例可供参考

一、get和post方法

最简单的获取参数的方法。我还知道json映射,后续补充。

go 复制代码
package main

import (
	"fmt"
	"github.com/gin-gonic/gin"
	"net/http"
)

func main() {
	r := gin.Default()
	r.GET("/hi", getMsg)
	r.POST("/hi", postMsg)
	r.Run(":9090")
}

func getMsg(c *gin.Context) {
	name := c.Query("name")
	// c.String(http.StatusOK, "欢迎:%s",name)
	c.JSON(http.StatusOK, gin.H{
		"code": http.StatusOK,
		"msg":  "欢迎:" + name,
	})
}

func postMsg(c *gin.Context) {
	name := c.DefaultPostForm("name", "lisi")
	fmt.Println(name)
	form, b := c.GetPostForm("name")
	fmt.Println(form, b)
}

二、重定向

go 复制代码
package main

import (
	"github.com/gin-gonic/gin"
	"net/http"
)

func main() {
	r := gin.Default()
	// 第一种应该是在某个版本被废弃了
	/*r.GET("/hi", func(c *gin.Context) {
		c.Redirect(http.StatpusMovedPermanently, "http://www.baidu.com")
	})*/

	r.GET("/hi", getMsg)
	r.GET("/hello", func(c *gin.Context) {
		c.Request.URL.Path = "/hi"
		r.HandleContext(c)
	})
	r.Run(":9090")
}

func getMsg(c *gin.Context) {
	name := c.Query("name")
	// c.String(http.StatusOK, "欢迎:%s",name)
	c.JSON(http.StatusOK, gin.H{
		"code": http.StatusOK,
		"msg":  "欢迎:" + name,
	})
}

总结

提示:这里对文章进行总结:

例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。

相关推荐
水云桐程序员3 小时前
从零开发软件的步骤,软件开发从零到完成应该怎么做?
笔记·学习·软件构建·个人开发
David猪大卫4 小时前
【Linux修炼】环境变量、进程地址空间
linux·c语言·经验分享·笔记·学习·ubuntu·centos
叼烟扛炮5 小时前
Linux 学习笔记(五十六):IO 多路复用初探——select 的“三宗罪”
linux·服务器·数据库·笔记·学习·php
叼烟扛炮11 小时前
Linux 学习笔记(五十八):IO 多路复用封神——epoll 底层原理揭秘
linux·运维·服务器·网络·笔记·学习·php
陈布衣13 小时前
MySQL(1)_MySQL 5.7.21 Linux 安装笔记
linux·笔记·mysql
缘来是你远去是我16 小时前
本地个人笔记exe
笔记
FakeOccupational16 小时前
【电路笔记 STM32】RTC配置:晶振选择+闹钟Configuration+中断设置
笔记·stm32·实时音视频
迪康coolmu17 小时前
企业U盘管控落地实战:基于迪康端点安全一体化管理系统的移动存储安全实践
运维·人工智能·经验分享·笔记·安全·电脑
Z21-X19 小时前
云原生运维学习笔记:容器技术的演进、底层原理与 Docker 全生命周期管理
运维·笔记·学习·云原生
Rabitebla1 天前
【Linux 底层原理】进程(十):进程等待详解---从僵尸进程到 wait、waitpid 与 status
linux·c++·笔记·学习·visual studio