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提供了大量能使我们快速便捷地处理数据的函数和方法。

相关推荐
hanlin0325 分钟前
刷题笔记:力扣第144题-二叉树的前序遍历
笔记·算法·leetcode
彧azz34 分钟前
图的最短路径:Dijkstra与Floyd算法
数据结构·笔记·学习
人效思维笔记1 小时前
阿米巴推行前,经营者要先做好哪些准备?
经验分享·笔记·阿米巴·阿米巴经营·中国式阿米巴
志尊宝2 小时前
Vue3 零基础每日笔记(047):动态路由与路由参数——:id 传参、query 传参、props 解耦
前端·javascript·vue.js·笔记·html5
沪上企服通2 小时前
旧账系统的信创迁移工程:从 MySQL/Oracle 到国产库、国密与电子会计档案闭环
数据库·笔记·数据库架构
三岁就很~酷~3 小时前
ai agent自学 基础命令和上下文监控(9/17)
笔记
彧azz4 小时前
Java学习记录:判断语句
java·笔记·学习·算法
hanlin034 小时前
刷题笔记:力扣第560题-和为k的子数组
笔记·算法·leetcode
摇滚侠5 小时前
《Spring Boot 3:高级与架构设计》第 1 章 元编程与元信息 个人理解 1
java·spring boot·笔记·后端
志尊宝5 小时前
Vue3 零基础每日笔记(046):声明式导航与编程式导航——useRouter / useRoute 双子星
vue.js·笔记·#vue #前端 #前端开发·#javascript·#vue.js