golang学习5,glang的web的restful接口

简介: golang学习5,glang的web的restful接口
  1. //返回json
    r.GET("/getJson", controller.GetUserInfo)
    package main

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

func main() {
r := gin.Default()

r.GET("/get", func(ctx *gin.Context) {
    ctx.String(200/*http.StatusOK*/, "hello word golang-web!")
})

r.POST("/user/post", func(ctx *gin.Context) {
    ctx.String(200, "这是一个post请求!")
})

r.PUT("/user/put", func(ctx *gin.Context) {
    ctx.String(200, "这是一个put请求!")
})

r.DELETE("/user/delete", func(ctx *gin.Context) {
    ctx.String(200, "这是一个delete请求!")
})


//返回json
r.GET("/getJson", controller.GetUserInfo)




r.Run(":9999")

}
2.
package controller

import "github.com/gin-gonic/gin"

func GetUserInfo(c *gin.Context) {
ReturnSucess(c, 200, "sucess", "user info" , 1)

}
3.
package controller

import "github.com/gin-gonic/gin"

type JsonStruct struct {
Code int //'json: "code"'
Msg interface{} //'json: "msg"'
Data interface{} //'json: "data"'
Count int64 //'json: "count"'
}

func ReturnSucess(c *gin.Context, code int , msg interface{}, data interface{}, count int64) {
json := &JsonStruct{Code: code, Msg: msg, Data: data, Count: count}
c.JSON(200, json)
}

func ReturnError(c *gin.Context, code int , msg interface{}, data interface{}, count int64) {
json := &JsonStruct{Code: code, Msg:msg, Data:data, Count:count}
c.JSON(200, json)
}
4.接口返回示例:
image.png

相关文章
|
安全 关系型数据库 测试技术
学习Python Web开发的安全测试需要具备哪些知识?
学习Python Web开发的安全测试需要具备哪些知识?
424 61
|
中间件 Go
Golang | Gin:net/http与Gin启动web服务的简单比较
总的来说,`net/http`和 `Gin`都是优秀的库,它们各有优缺点。你应该根据你的需求和经验来选择最适合你的工具。希望这个比较可以帮助你做出决策。
718 35
|
安全 Java 数据安全/隐私保护
springSecurity学习之springSecurity过滤web请求
通过配置 Spring Security 的过滤器链,开发者可以灵活地管理 Web 请求的安全性。理解核心过滤器的作用以及如何配置和组合这些过滤器,可以帮助开发者实现复杂的安全需求。通过具体的示例代码,可以清晰地了解 Spring Security 的配置方法和实践。
787 23
|
SQL 安全 前端开发
Web学习_SQL注入_联合查询注入
联合查询注入是一种强大的SQL注入攻击方式,攻击者可以通过 `UNION`语句合并多个查询的结果,从而获取敏感信息。防御SQL注入需要多层次的措施,包括使用预处理语句和参数化查询、输入验证和过滤、最小权限原则、隐藏错误信息以及使用Web应用防火墙。通过这些措施,可以有效地提高Web应用程序的安全性,防止SQL注入攻击。
978 2
|
机器学习/深度学习 移动开发 JavaScript
Web实时通信的学习之旅:SSE(Server-Sent Events)的技术详解及简单示例演示
Web实时通信的学习之旅:SSE(Server-Sent Events)的技术详解及简单示例演示
8518 0
|
网络协议 API 网络安全
Web实时通信的学习之旅:轮询、WebSocket、SSE的区别以及优缺点
Web实时通信的学习之旅:轮询、WebSocket、SSE的区别以及优缺点
3434 0
|
网络协议 安全 JavaScript
Web实时通信的学习之旅:WebSocket入门指南及示例演示
Web实时通信的学习之旅:WebSocket入门指南及示例演示
2763 0
|
监控 Java Maven
springboot学习二:springboot 初创建 web 项目、修改banner、热部署插件、切换运行环境、springboot参数配置,打包项目并测试成功
这篇文章介绍了如何快速创建Spring Boot项目,包括项目的初始化、结构、打包部署、修改启动Banner、热部署、环境切换和参数配置等基础操作。
2464 0
|
10月前
|
存储 安全 Java
【Golang】(4)Go里面的指针如何?函数与方法怎么不一样?带你了解Go不同于其他高级语言的语法
结构体可以存储一组不同类型的数据,是一种符合类型。Go抛弃了类与继承,同时也抛弃了构造方法,刻意弱化了面向对象的功能,Go并非是一个传统OOP的语言,但是Go依旧有着OOP的影子,通过结构体和方法也可以模拟出一个类。
450 2
|
Go
Golang语言之管道channel快速入门篇
这篇文章是关于Go语言中管道(channel)的快速入门教程,涵盖了管道的基本使用、有缓冲和无缓冲管道的区别、管道的关闭、遍历、协程和管道的协同工作、单向通道的使用以及select多路复用的详细案例和解释。
877 4
Golang语言之管道channel快速入门篇

热门文章

最新文章

推荐镜像

更多