当前位置: 首页 > news >正文

Vs做的网站调试时如何适应网页网站改版 新闻

Vs做的网站调试时如何适应网页,网站改版 新闻,晋中网络推广,沃尔玛超市开启一个简单的API服务。 golang的教程网上一大堆,官网也有非常详细的教程,这里不在赘述这些基础语法教程,我们意在快速进入项目开发阶段。 golang好用语法教程传送门: m.runoob.com/go/ 编写第一个API 前提:按照上一…

开启一个简单的API服务。

golang的教程网上一大堆,官网也有非常详细的教程,这里不在赘述这些基础语法教程,我们意在快速进入项目开发阶段。

golang好用语法教程传送门: m.runoob.com/go/

编写第一个API

前提:按照上一篇文档初始化项目

1. 下载gin框架,一个非常好用的写API的框架,使用也很广泛

# 在项目文件下执行go命令下载gin依赖
go mod get github.com/gin-gonic/gin

2. 创建API文件夹:apis

3. 在apis创建第一个API文档:hello.go

4. 实现一个入参为name,返回为:hello name的api

package apisimport ("fmt""net/http""github.com/gin-gonic/gin""github.com/gin-gonic/gin/binding"
)// API入参参数
type HttpRequest struct {Name string `json:"name"`
}// API响应参数
type HttpRespone struct {Status  int    `json:"status"`Message string `json:"message"`Data    string `json:"data"`
}/*
实现一个入参为name,响应为:hello name的api
这个例子中,异常信息通过status和message返回,api响应状态正常,如果需要响应400等异常状态,可以更换c.JSON(http.StatusOK, res)中的StatusOK
*/
func Hello(c *gin.Context) {// 声明reqvar req HttpRequest// 声明res并初始化var res = HttpRespone{}// 获取api请求参数err := c.ShouldBindBodyWith(&req, binding.JSON)// 出现错误,则响应错误信息if err != nil {res.Status = 10res.Message = "读取请求参数错误"c.JSON(http.StatusOK, res)return}// 判断是否入参nameif req.Name == "" {res.Status = 20res.Message = "参数name为空"c.JSON(http.StatusOK, res)return}// 正常响应 hello nameres.Status = 0res.Message = "成功"res.Data = fmt.Sprintf("hello %v", req.Name)c.JSON(http.StatusOK, res)
}

5. 在apis文件夹中创建apis.go,编写api路由注册和服务启动方法

package apisimport ("net/http""github.com/gin-gonic/gin"
)func StartHttp() {// 设置为发布模式(初始化路由之前设置)gin.SetMode(gin.ReleaseMode)// gin 默认中间件r := gin.Default()// 访问一个错误路由时,返回404r.NoRoute(func(c *gin.Context) {c.JSON(http.StatusNotFound, gin.H{"status":  404,"message": "404, page not exists!",})})// 注册hello路由r.POST("/hello", Hello)// 启动API服务if err := r.Run(":8080"); err != nil {panic(err)}
}

6. 入口文件main.go引用apis模块

package mainimport "prj_aiee/apis"func main() {apis.StartHttp()
}

完整的项目文件构成如图:

7.  启动服务

# 项目文件夹下执行go命令
go run main.go

8. 调用api

# 执行curl命令调用API
curl -X POST "http://localhost:8080/hello" -H "content-type: application/json" -d "{\"name\": \"aiee\"}"

9. 响应如下: {"status":0,"message":"成功","data":"hello aiee"}

项目源码:GitHub - liyonge-cm/go_prj_aiee: go api 服务 demo

http://www.yayakq.cn/news/398224/

相关文章:

  • 做同城购物网站赚钱吗建设电商网站哪个平台比较好
  • 湖南网站开发公司想做服装电商怎么入手
  • 30分钟快速建设网站seo排名专业公司
  • 免费建设音乐网站整合营销传播方法包括
  • 宁安网站建设花瓣网是仿国外那个网站做的
  • 山东网站seo公司移动版网站开发
  • 网站的优化是什么意思wordpress页面文字首行缩进
  • 官方网站入口wordpress地图定位
  • 公共服务网站系统建设方案wordpress百度收录之自动推送设置
  • 做lgoo的网站一般有哪些松江微网站建设
  • 网站开发销售话术网站侧边 跟随 样式
  • 织梦网站名称标签莱芜金点子信息港招聘信息
  • 电脑外设网站建设论文怎样建设一个自己的网站首页
  • 做网站插背景图片如何变大泉州seo代理商
  • 一个正规的网站建设公司wordpress网站搬家
  • 网站建设费用是否资本化温州百度网站快速优化
  • 淄博临淄建设局网站自己怎么做 优惠券网站
  • 一个综合网站上线多少钱株洲网络营销推广哪家好
  • 网站建设总体规划包括网站弹出广告gif出处
  • 北京软件公司关键词优化徐州百都网络
  • 属于您自己的网站建设移动端网站一般宽做多大
  • 网站开发需要哪些人员温州机械网站建设
  • 网站dns解析设置如何制作应用软件
  • 谷歌搜索引擎网页版入口seo营销方法
  • 泰兴网站设计wordpress 文章表
  • 新人如何自学做网站怎么对自己的网页进行修改
  • 建设银行啦卡信用网站wordpress网站搬家图片路径
  • 培训型网站建设建设官网银行
  • 商洛网站制作好多钱网站
  • 微企申请网站贵州做网站