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

手机网站免费做推广长沙网站建设公司有哪些

手机网站免费做推广,长沙网站建设公司有哪些,长沙php网站建设,做平面资源比较好的网站中间件 在 userapi 项目中引入中间件。go项目中的中间可以处理请求之前和之后的逻辑。 1. 在 userapi/internal目录先创建 middlewares目录#xff0c;并创建 user.go文件 package middlewaresimport (github.com/zeromicro/go-zero/core/logxnet/http并创建 user.go文件 package middlewaresimport (github.com/zeromicro/go-zero/core/logxnet/http )type UserMiddleware struct { }func NewUserMiddleware() *UserMiddleware {return UserMiddleware{} }func (*UserMiddleware) LoginAndReg(next http.HandlerFunc) http.HandlerFunc {return func(w http.ResponseWriter, r *http.Request) {logx.Info(execute before login and register)next(w, r)logx.Info(execute after login and register)} }这里就定义了一个中间件。 2. 在 userapi/internal/svc/servicecontext.go 文件中创建一个中间件实例 package svcimport (github.com/zeromicro/go-zero/zrpcrpc-common/userclientuserapi/internal/middlewaresuserapi/internal/config )type ServiceContext struct {Config config.ConfigUserRpc userclient.UserUserMiddleware *middlewares.UserMiddleware // 定义中间件 }func NewServiceContext(c config.Config) *ServiceContext {return ServiceContext{Config: c,UserRpc: userclient.NewUser(zrpc.MustNewClient(c.UserRpc)),UserMiddleware: middlewares.NewUserMiddleware(), // 创建中间件实例} }3. 修改 userapi/internal/handler/routers.go 文件 在这里引入了路由中间件。 4. 修改 userapi/internal/logic/userapilogic.go文件 在该文件中修改 Login 方法加入一行日志。为了后面测试用。 func (l *UserLogic) Login(t *types.LoginRequest) (string, error) {logx.Info(login executing....) // 新加入的代码userId : 100auth : l.svcCtx.Config.Authreturn l.getToken(auth.AccessSecret, time.Now().Unix(), auth.AccessExpire, userId) }5. 测试中间件 访问 login 接口后在控制台打印日志。日志是由路由中间件打印的。 6. 全局中间件 上面引入的路由中间件是可以针对部分路由起作用如果想要对所有路由起作用可以使用全局中间件。 在 userapi/internal/handler/routers.go文中加入一行代码 这样引入的中间件就是全局中间件对所有路由都会生效。 自定义错误 1. 引出问题 在 userapi/internal/logic/userapilogic.go 文件的 GetUser 方法加一段逻辑 测试 用postman 测试后结果如图。显然很多情况下我们不想直接获取到这种形式的错误。更愿意拿到一个 json 格式的错误包括错误代码错误内容。这样更容易处理。 2. 在 userapi/internal 创建 errorx 目录来管理错误 在 userapi/internal/errorx 目录创建一个 error.go 文件 package errorxvar ParamsError New(1101, parameter error)type BizError struct {Code int json:codeMsg string json:msg }func New(code int, msg string) *BizError {return BizError{Code: code,Msg: msg,} }func (e *BizError) Error() string {return e.Msg }type ErrorResponse struct {Code int json:codeMsg string json:msg }func (e *BizError) Data() *ErrorResponse {return ErrorResponse{e.Code,e.Msg,} } 该文件定义了错误码和错误内容。 3. 修改 userapi/internal/logic/userapilogic.go 文件 返回错误的时候返回我们上一步自定义的错误。 4. 修改 userapi/userapi.go 文件增加错误处理逻辑 增加了错误处理的逻辑。 5. 测试 这样就获取到 json 格式的错误数据。 goctl 命令 1. 源码文件生成格式 goctl api go -api userapi.api -dir ./gen 这种方式生成的代码文件名称是所有字母全小写。有时候我们需要不同的命名格式比如有些团队或个人喜欢驼峰命名方式有些喜欢snake的形式 goctl api go -api userapi.api -dir ./gen -style go_zero 这种方式生成的文件名称是 snake 形式。 goctl api go -api userapi.api -dir ./gen -style goZero 这种命名方式是驼峰命名方式 2. 生成 proto 文件 goctl rpc template -ouser.proto利用模板生成 .proto 文件这样在开发过程中有一个基础模块。在这个目标上进行修改相对更方便一点。 3. 生成 rpc 服务代码 goctl rpc protoc user.proto --go_out. --go-grpc_out. --zrpc_out.之前我们项目的代码就是靠这种方式生成的。 4. 生成 model 代码 goctl model mysql ddl -src./*.sql dir./sql/model -c根据数据库的 ddl 语句生成模型代码。生成的这部分代码可以摘取部分使用减少工作量。 5. 生成 dockerfile goctl docker -go hello.gohello.go 是启动类。 6. 生成 k8s 只要清单 goctl kube deploy -name redis -namespace adhoc -image redis:6-alpine -o redis.yaml -port 6379
http://www.hkea.cn/news/14527347/

相关文章:

  • 建个网站做产品怎样搜狗推广开户
  • wordpress多站点 seo注册网站用于跳转虚拟货币网站违法
  • 物流公司网站 源码广州交通最新消息
  • 网站做接口排线方法小程序开发教程文档
  • 企业网站开发开题报告wordpress 4.7.9漏洞
  • 者珠海市建设局网站云端+文明实践活动
  • 中国建设银行官网站安装k宝网站制作平台
  • 小企业怎么做网站哪些人是建网站的
  • 聊城做网站优化重庆市建设工程节能中心网站
  • 软文网站有哪些网站建设具体建设流程
  • 网站建设英文文献目录如何快速推广一个新产品
  • 进度跟踪网站开发化工网站模板
  • 为什么没有人做搜索网站了上海中小企业
  • 中鼎国际建设集团网站如何设计推广方案
  • me域名公司网站企业网站开发实训目的
  • 网站到期不想续费网页设计表格跨行代码
  • 珠宝静态网站模板沧州网站设计多少钱
  • 景洪服装网站建设网站建设特色
  • 哪里有免费的网站源码成都工业设计公司
  • 手机算命网站建设淘特app推广代理
  • 开拓网站建设公司百度指数分析
  • 沈阳有资质做网站的公司泉州网站建设网站制作
  • 山西住房与城乡建设厅定额网站简约网站建设
  • 临沂网站建设联系方式高端玩家
  • 做众筹网站怎么赚钱网架钢构公司
  • 顺德营销型网站建设甘肃酒泉建设银行网站
  • 公司网站建设怎么成都模板网站建设服务
  • 网站建设工作流程图课程培训网站建设
  • 泊头做网站电话专门做淘宝客网站
  • 街舞舞团公司做网站做网站的硬件