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

相关文章
|
1月前
|
机器学习/深度学习 移动开发 JavaScript
Web实时通信的学习之旅:SSE(Server-Sent Events)的技术详解及简单示例演示
Web实时通信的学习之旅:SSE(Server-Sent Events)的技术详解及简单示例演示
126 0
|
1月前
|
网络协议 API 网络安全
Web实时通信的学习之旅:轮询、WebSocket、SSE的区别以及优缺点
Web实时通信的学习之旅:轮询、WebSocket、SSE的区别以及优缺点
142 0
|
1月前
|
网络协议 安全 JavaScript
Web实时通信的学习之旅:WebSocket入门指南及示例演示
Web实时通信的学习之旅:WebSocket入门指南及示例演示
131 0
|
2月前
|
安全 API 开发者
Web 开发新风尚!Python RESTful API 设计与实现,让你的接口更懂开发者心!
在当前的Web开发中,Python因能构建高效简洁的RESTful API而备受青睐,大大提升了开发效率和用户体验。本文将介绍RESTful API的基本原则及其在Python中的实现方法。以Flask为例,演示了如何通过不同的HTTP方法(如GET、POST、PUT、DELETE)来创建、读取、更新和删除用户信息。此示例还包括了基本的路由设置及操作,为开发者提供了清晰的API交互指南。
107 6
|
1月前
|
监控 Java Maven
springboot学习二:springboot 初创建 web 项目、修改banner、热部署插件、切换运行环境、springboot参数配置,打包项目并测试成功
这篇文章介绍了如何快速创建Spring Boot项目,包括项目的初始化、结构、打包部署、修改启动Banner、热部署、环境切换和参数配置等基础操作。
128 0
|
1月前
|
安全 Java Go
【Golang入门】简介与基本语法学习
Golang语言入门教程,介绍了Go语言的简介、基本语法、程序结构、变量和常量、控制结构、函数、并发编程、接口和类型、导入包、作用域以及错误处理等关键概念,为初学者提供了一个全面的学习起点。
24 0
|
3月前
|
XML JSON API
RESTful API设计最佳实践:构建高效、可扩展的接口
【8月更文挑战第17天】RESTful API设计是一个涉及多方面因素的复杂过程。通过遵循上述最佳实践,开发者可以构建出更加高效、可扩展、易于维护的API。然而,值得注意的是,最佳实践并非一成不变,随着技术的发展和业务需求的变化,可能需要不断调整和优化API设计。因此,保持对新技术和最佳实践的关注,是成为一名优秀API设计师的关键。
|
9天前
|
SQL 缓存 测试技术
构建高性能RESTful API:最佳实践与避坑指南###
—— 本文深入探讨了构建高性能RESTful API的关键技术要点,从设计原则、状态码使用、版本控制到安全性考虑,旨在为开发者提供一套全面的最佳实践框架。通过避免常见的设计陷阱,本文将指导你如何优化API性能,提升用户体验,确保系统的稳定性和可扩展性。 ###
46 12
|
6天前
|
JSON JavaScript API
深入浅出Node.js:从零开始构建RESTful API
【10月更文挑战第39天】 在数字化时代的浪潮中,API(应用程序编程接口)已成为连接不同软件应用的桥梁。本文将带领读者从零基础出发,逐步深入Node.js的世界,最终实现一个功能完备的RESTful API。通过实践,我们将探索如何利用Node.js的异步特性和强大的生态系统来构建高效、可扩展的服务。准备好迎接代码和概念的碰撞,一起解锁后端开发的新篇章。