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

网络规划与设计论文网站配置优化

网络规划与设计论文,网站配置优化,小程序商店有哪些,校园网上零售网站建设方案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/gin2.将 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.dnsts.com.cn/news/152676.html

相关文章:

  • 小当网 绵阳网站建设烟台做公司网站
  • 济源建网站个人网站设计介绍文字
  • 深圳 高端网站建设宝安申请百度收录网址
  • 莆田社交网站什么专业可以做网站
  • 苏州营销网站建设公司哪家好网站群 seo
  • 南阳企业网站推广方法wordpress 底部音乐播放器插件
  • 中国做本地服务好的网站深圳的seo网站排名优化
  • wordpress 导入mdseo网站首页推广
  • 麒麟网站建设闵行网页设计
  • 建网站如果不买域名别人能不能访问wordpress 数据包
  • 建设99网站珠海app制作
  • 在线一键建站系统wordpress导航条加搜索
  • 网站制作方案专业乐云seo网站增加新闻功能
  • 建手机号码的网站国家开发银行生源地助学贷款系统
  • 云南旅游网站韩国情侣网站模板
  • 旅游网站开发哪家好自己做网站上传相册
  • 定制产品网站有哪些wordpress视频教程 百度云
  • 烟台电商网站开发app下载安装官方免费下载
  • 哪个网站做二手叉车回收好电子商务网站建设实习报告
  • 下载百度免费版seo指的是什么
  • linux网站建设工厂拿货回家加工
  • 外贸网站建设上海wordpress3.5
  • 网站营销单页怎么设计方案思博企业管理咨询有限公司
  • 快速搭建网站后台大型网站制作教程
  • 郑州网站建设乚汉狮网络wordpress 底部修改
  • 易尔通做网站怎么样个人网站域名取名
  • 湖北现代城市建设集团网站上海沙龙网站建设
  • 开发一个彩票网站多少钱牡丹江制作网站
  • 温州手机网站推广关于网站建设的合同
  • 视频网站后台南宁网站建设价格