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

go初识iris框架(四) -框架设置操作

前言

iris(1)
iris(2)
iris(3)

框架设置操作

当我们的一个路径是xxx/user/info,xxx/user/login,xxx/user/register的时候,我们发现前面都有一个user,我们如果用/{data:string}这样的话这样导致我们的路径是灵活的,所以我们得用其他方法

这里我们的路径是以anime为例

animeParty := app.Party("/animes",func(ctx iris.Context){//处理下一级请求ctx.Next()
})
animeParty.Get("/djsy",func(ctx iris.Context){djsyMsg := Anime{Fid:0,FName: "刀剑神域",ZFNumber:0,}ctx.JSON(djsyMsg)
})
animeParty.Get("/yls1",func(ctx iris.Context){djsyMsg := Anime{Fid:1,FName: "野良神第一季",ZFNumber:0,}ctx.JSON(djsyMsg)
})

Golang中分组处理

/**用户模块usersxxx/users/register 注册xxx/users/login   登陆xxx/users/info    获取用户信息
*/
/**路由组请求/users:自定义
*/
userParty := app.Party("/users",func(ctx iris.Context){ctx.Next()
})
userParty.Get("/register",func(ctx iris.Context){userMsg := []User{{Uid: 0,Name: "admin"},{Uid: 1,Name: "zhangsan"},}ctx.JSON(userMsg)
})userParty.Get("/login",func(ctx iris.Context){userMsg := []User{{Uid: 0,Name: "admin"},{Uid: 1,Name: "zhangsan"},}ctx.JSON(userMsg)
})

这个Party()会返回一个Party结构体对象,其中func()是匿名函数,我们可以定义一个方法来引用方法

userParty := app.Party("/users",userPartyFunc)func userPartyFunc(ctx iris.Context){ctx.Next()
}

路由中的Done方法

当你执行完请求执行了Next()方法,就会去执行Done()方法,表示你的请求完成了

userParty := app.Party("/admin",func(ctx iris.Context){})
userParty.Done(func(ctx iris.Context){app.Application.Logger().Info("<respones:"+ctx.Path())
})
userParty.Get('/info',func(ctx iris.Context){})

如果你需要进行一些配置

app.Configure()来进行配置

//一、通过程序代码对应用进行全局配置
app.Configure(iris.WithConfiguration(iris.Configuration{//如果设置为true,当人为中断程序时,则不会正常将服务关闭,如果设置为true,需要自己自定义处理DisableInterruptHandler: false,//该配置项表示更正并将请求的路径重定向到已注册的路径//比如:如果请求/home/但找不到比Route的处理程序,然后路由器检查/home处理程序是否存在,如果是,permant)将客户端重定向到正确的路径/home。//默认为falseDisablePathCorrection: false,EnablePathEscape: false,FireMethodNotAllowed: false,DisableBodyConsumptionOnUnmarshal: false,DisableAutoFireStatusCode: false,TimeFormat: "Mon.02 Jan 2006 15:04:05 GMT",Charset: "utf-8",
}))//二、通过读取tml配置文件读歌服务配置
//注意:要在rUn方法运行之前执行
app.Configure(iris.WithConfiguration(iris.T0ML(filename:"tml-path"))
//三、通过读取yam1配置文件读取服务配置//同样要在run方法运行之前执行
app.Configure(iris.WithConfiguration(iris.YAML(filename:"yml-path"))
//四、通过j50n配置文件进行应用配置
file,-=os,0pen(name:"json-path")
defer file.Close()
http://www.lryc.cn/news/163700.html

相关文章:

  • python基础语法(二)
  • 从本地到Gitee:一步步学习文件上传及解决常见报错问题
  • idea2018修改大小写提示(敏感)信息
  • Quartz.Net调度框架简介
  • HarmonyOS/OpenHarmony(Stage模型)应用开发组合手势(一)连续识别
  • Redis --- 位图
  • 自然语言处理-词向量模型-Word2Vec
  • List知识总结
  • 代码随想录day32
  • 2.8 PE结构:资源表详细解析
  • Python数据类型的相互转换
  • 阿里云云主机免费试用三个月
  • OpenHarmony 使用 ArkUI Inspector 分析布局
  • Axes3D绘制3d图不出图解决办法【Python】
  • Idea中 css 、js 压缩插件会自动生成xxx.min.css、xxx.min.js文件
  • win11无法加载文件,因为在此系统上禁止运行脚本
  • Spring Boot将声明日志步骤抽离出来做一个复用类
  • RabbitMQ实现数据库与ElasticSearch的数据同步和分享文件过期处理
  • PyCharm集成开发环境安装、启动与设置
  • 算法与设计分析--实验一
  • ElementUI浅尝辄止28:Dropdown 下拉菜单
  • jupyter 格式化与快捷键
  • Spring以及SpringBoot/SpringCloud注解
  • vim常用操作
  • Serverless Framework 亚马逊云(AWS)中国地区部署指南
  • 【Spring Cloud系统】- 轻量级高可用工具Keepalive详解
  • 【JAVA-Day05】深入理解Java数据类型和取值范围
  • “JSR303和拦截器在Java Web开发中的应用与实践“
  • 第六章 图 六、最小生成树(Prim算法、Kruskal算法)
  • 机器学习笔记 - 什么是 MLOps?