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

网站建设早会说什么网络营销公司哪家可靠

网站建设早会说什么,网络营销公司哪家可靠,wordpress国内最流行的主题,信阳网站建设找汉狮GIN介绍 Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点 对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错 借助框架开发,不仅可以省去很多常用的封装带来的时间,…

GIN介绍

Gin是一个golang的微框架,封装比较优雅,API友好,源码注释比较明确,具有快速灵活,容错方便等特点

对于golang而言,web框架的依赖要远比Python,Java之类的要小。自身的net/http足够简单,性能也非常不错

借助框架开发,不仅可以省去很多常用的封装带来的时间,也有助于团队的编码风格和形成规范

Gin 最擅长的就是 Api 接口的高并发,如果项目的规模不大,业务相对简单,这个时候我们也推荐您使用 Gin。
当某个接口的性能遭到较大挑战的时候,这个还是可以考虑使用 Gin 重写接口。
Gin 的官网: Gin Web Framework (gin-gonic.com)

安装

要安装 Gin 软件包,需要先安装 Go 并设置 Go 工作区。

1.下载并安装 gin:

$ go get -u github.com/gin-gonic/gin

2.将 gin 引入到代码中:

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

3.(可选)如果使用诸如 http.StatusOK 之类的常量,则需要引入 net/http 包:

import "net/http"

http.statusok就是状态码200

 基本路由

  • gin 框架中采用的路由库是基于httprouter做的

  • 地址为:https://github.com/julienschmidt/httprouter

路由概述 

路由(Routing)是由一个 URI(或者叫路径)和一个特定的 HTTP 方法(GET、POST 等)组成
的,涉及到应用如何响应客户端对某个网站节点的访问。
RESTful API 是目前比较成熟的一套互联网应用程序的 API 设计理论,所以我们设计我们的路由的
时候建议参考 RESTful API 指南。
GET(SELECT)
从服务器取出资源(一项或多项)
POST(CREATE)
在服务器新建一个资源
PUT(UPDATE)
在服务器更新资源(客户端提供改变后的完整资源)
DELETE(DELETE) 
从服务器删除资源

简单的路由配置 

测试我使用的是Apipost7测试工具

	route.GET("/",func (c *gin.Context){c.String(http.StatusOK,"Get获取页面信息")})

gin.Context,封装了request和response

package main
// (可选)如果使用诸如 http.StatusOK 之类的常量,则需要引入 net/http 包:
import ("github.com/gin-gonic/gin""net/http")func main(){//创建一个默认路由route := gin.Default()//配置路由// gin.Context,封装了request和responseroute.GET("/",func (c *gin.Context){c.String(http.StatusOK,"Get获取页面信息")})route.GET("/ping",func(c *gin.Context){c.String(200,"可配置多个GET方法来进行测试")})route.POST("/add",func (c *gin.Context){c.String(http.StatusOK,"post方法主要用于在服务器新建一个资源")})route.PUT("justice",func(c *gin.Context){c.String(200,"put方法在服务器更新资源,客户端提供改变后的完整资源")})route.DELETE("/delete",func(c *gin.Context){c.String(200,"从服务器删除资源")})//定义监听的端口route.Run(":8210")
}

 

c.String() c.JSON() c.JSONP() c.XML() c.HTML()

返回一个字符串

r.GET("/",func(ctx *gin.Context) {ctx.String(http.StatusOK,"%v","返回的字符串")})

返回一个 JSON 数据 

	r.GET("/json" ,func(ctx *gin.Context) {ctx.JSON(http.StatusOK,map[string]interface{}{"title" :"地区","city":"城市",})})
//gin.H其实就是封装的是mapr.GET("/json1" ,func(ctx *gin.Context) {ctx.JSON(http.StatusOK,gin.H{"title" :"地区","city":"城市","province":"曹县",})})

gin.H其实就是封装的是map

 搞一个结构体

package main
import("net/http""github.com/gin-gonic/gin")type Structdemo struct{Name string `json:"name"`Age int		`json:"age"`Servant string `json:"servant"`
}func main(){r.GET("/json2",func(ctx *gin.Context) {a := &Structdemo{Name: "卫宫士郎",Age: 19,Servant: "sabar",}ctx.JSON(http.StatusOK,a)})}

 

切换标题的操作

r.GET("/json3",func(ctx *gin.Context) {type People struct{Name string `json:"name"`Servant string	`json:"servant"`}b := &People{Name: "远坂凛",Servant: "archer",}ctx.JSON(http.StatusOK,b)
})

响应Jsonp请求

JSONP的原理是通过动态创建<script>标签,并设置其src属性为目标数据源的URL。目标数据源在服务端返回的响应数据需要用一个回调函数进行包裹,这样在客户端收到数据时,将会直接执行回调函数,从而将数据传递到客户端。这样就实现了在不同域之间获取数据的需求和跨域的限制。

    // http://localhost:8080/jsonp?callback=xxxx

	r.GET("/jsonp", func(ctx *gin.Context) {d := &Structdemo{Name: "卫宫士郎",Age: 19,Servant: "sabar",}ctx.JSONP(200, d)})

返回 XML 数据 

	r.GET("/xml", func(ctx *gin.Context) {ctx.XML(http.StatusOK,gin.H{"title":"页面","information":123,})})

http://www.mmbaike.com/news/106673.html

相关文章:

  • 网页编辑器快捷键优势的seo网站优化排名
  • 企业网站建设的要素百度安装到桌面
  • 手机版 网站建设2023年时政热点事件
  • 怎么做网站可以注册的seo免费自学的网站
  • 杭州网站建设(推荐乐云践新)百度一下网页入口
  • 东莞科技网站建设付费推广外包
  • 西安专业做网站建设模拟搜索点击软件
  • 做什么软件做网站效率最好培训机构营业执照如何办理
  • 深圳的网站建设公司电话河南郑州最新消息今天
  • 外贸英文网站模板百度指数有哪些功能
  • 怎么建设色情网站优化网站建设seo
  • 装饰公司资质优化大师app下载安装
  • 高考写作网站怎么去推广一个产品
  • 企业网站建设英文东莞关键词优化推广
  • 网站开发建设账务处理程序设计好看的网站
  • 培训网站源码如何做百度免费推广
  • 中国网站优化哪家好网站服务器软件
  • 谁有人和兽做的网站?中国seo网站
  • 专业刷单网站建设网站建站
  • 建立自己的公司网站自己的网站怎么样推广优化
  • dedecms 调用wordpressseo关键词库
  • 汽车4s网站设计销售管理
  • 小鱼儿外贸网站seo推广视频隐迅推专业
  • html网页制作app下载汕头seo网站推广
  • 核工业南京建设集团网站免费网站外链推广
  • 校园网站建设工作总结惠州疫情最新消息
  • 广州网站建设哪里买免费下载百度到桌面
  • 做3dh春丽网站叫什么陕西百度推广的代理商
  • 网站开发工程师所需要的经验seo外推软件
  • 网上暴利赚钱项目郑州企业网站seo