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

即墨网站建设在哪西安有关做网站的公司有哪些

即墨网站建设在哪,西安有关做网站的公司有哪些,网络平面广告设计,大型自助建站平台文章目录1.Gin 的 Middleware2.gin-contrib/timeout3.小结参考文献API 是现代应用程序中的重要组成部分#xff0c;可以用于提供数据和功能#xff0c;供客户端应用程序访问。由于网络不稳定、服务器负载、网络拥堵等因素#xff0c;API 请求可能会花费较长时间。这可能导致… 文章目录1.Gin 的 Middleware2.gin-contrib/timeout3.小结参考文献API 是现代应用程序中的重要组成部分可以用于提供数据和功能供客户端应用程序访问。由于网络不稳定、服务器负载、网络拥堵等因素API 请求可能会花费较长时间。这可能导致客户端应用程序在等待响应时出现延迟最终导致用户不满意甚至放弃使用应用程序。为了避免这种情况可以为 API 请求设置超时时间。超时时间是指在一定时间内如果 API 请求没有得到响应将自动取消该请求。这可以防止客户端应用程序一直等待 API 响应从而提高用户体验。 1.Gin 的 Middleware Gin 是一种轻量级的 Web 框架用于构建高性能的 Web 应用程序。它具有快速、简单和易于使用的特点并且具有许多可扩展的功能如中间件。 在 Gin 框架中中间件是一种用于拦截 HTTP 请求和响应的机制。中间件函数可以在请求到达处理函数之前或之后执行某些操作例如 登录态校验权限校验打印请求和响应的内容设置接口超时等 Gin 框架提供了一种简单的方法来定义和使用中间件。中间件函数需要满足以下条件 函数的签名必须是 func(c *gin.Context)其中 c 是 Gin 框架中的上下文对象。函数可以执行任何操作但是必须调用 c.Next() 方法来继续执行请求处理程序和其他中间件函数。如果需要在请求处理程序之后执行某些操作可以在调用 c.Next() 之后执行。 2.gin-contrib/timeout 在 Gin 中可以使用中间件来设置 API 请求的处理超时时间。 gin-contrib/timeout 是 Gin 框架的一个官方插件提供了一个可靠的方式来设置接口的超时时间并在超时时返回错误信息。使用 gin-contrib/timeout 可以大大简化我们的代码使代码更加清晰易懂。 以下是使用 gin-contrib/timeout 实现 Gin 接口超时返回的示例代码 package mainimport (lognet/httptimegithub.com/gin-contrib/timeoutgithub.com/gin-gonic/gin )func testResponse(c *gin.Context) {c.JSON(http.StatusGatewayTimeout, gin.H{code: http.StatusGatewayTimeout,msg: timeout,}) }func timeoutMiddleware() gin.HandlerFunc {return timeout.New(timeout.WithTimeout(3000*time.Millisecond),timeout.WithHandler(func(c *gin.Context) {c.Next()}),timeout.WithResponse(testResponse),) }func main() {r : gin.New()r.Use(timeoutMiddleware())r.GET(/slow, func(c *gin.Context) {time.Sleep(5000 * time.Millisecond)c.Status(http.StatusOK)})if err : r.Run(:8080); err ! nil {log.Fatal(err)} }在示例代码中我们使用 timeout.New() 函数来创建一个中间件并将超时时间设置为 3 秒。这个中间件会在请求处理时启用如果请求处理时间超过了 3 秒钟中间件会自动返回一个 HTTP 504 错误码Gateway Timeout并结束请求。这样我们就能够在 Gin 框架中非常方便地实现接口超时返回功能了。 访问接口 /slow 我们将会得到如下回包。 {code: 504,msg: timeout }3.小结 在本文中我们介绍了为什么要给 API 设置超时时间以及在 Gin 中使用 Middleware 设置超时时间的方法。通过合理地 关于 gin-contrib/timeout 具体实现感兴趣的同学可以深入研究其源码。 当然我们也可以自己实现 timeout 中间件。基于不重复造轮子的原则建议使用官方库。 参考文献 OpenAI ChatGPT Using middleware | Gin Web Framework gin-contrib/timeout Gin增加超时控制中间件 - 半码博客
http://www.eeditor.cn/news/123912/

相关文章:

  • 五和网站建设海南网页设计
  • 网站公司怎么做推广方案个人备案 什么网站
  • 网站 医院信息化建设简约的网站设计
  • 阿里巴巴怎样做网站网站备案经验
  • 网站建设要注意百度竞价包年推广是怎么回事
  • app开发和网站开发哪个好企业信息管理系统的发展历程
  • wui网站建设做移动网站优化快速排名软件
  • 网站集约建设后网站域名规范抖音代运营有风险吗
  • 微官网和微网站首页推广一个app的费用
  • 品牌和网站建设网站的建设与维护实践报告
  • 想给公司做个网站怎么做的济南外贸网站
  • 广东外贸网站推广公司杭州富阳网站建设
  • 汕头网页设计网站方案淘宝网站怎么做会话保持的
  • 手机微信网站怎么做常德营销型网站建设
  • 西安网站建设定wordpress还是hexo
  • 杭州品牌网站开发网站手机访问 动易
  • 网上提交报名表系统的网站建设百度网站架构
  • 十堰市建设网站的公司用什么制作网站
  • 网站推广预期达到的目标建筑企业和建设企业区别
  • 新零售型网站开发邯郸网站建设服务报价
  • 产品网站开发服务价格低性能好的手机
  • 株洲专业做网站设计的搜素引擎排名优化
  • 站长之家网站建设技术有哪些
  • 石家庄做手机网站推广最近七天的新闻大事
  • 做网站接广告门户网站属于数字媒体吗
  • 成都市企业网站建设副业做网站软件
  • 泸州百度做网站联系外贸销售渠道
  • 长沙公司网站建立食品 技术支持 东莞网站建设
  • 郑州网站建设公司qq能源与动力工程
  • 桂林网站制作网站定制高端网页