# goframe ``` s.BindHandler("/say", hello.SayHello) ``` 默认method是all ``` s.BindHandler("GET:/say", hello.SayHello) ``` 将请求方式变味了get bindObject:批量绑定方法 例: ``` func (s *Server) BindObject(pattern string, object interface{}, method ...string) ``` method ...string指定绑定的方法,不指定全都有; BindObjectMethod:只能绑定一个方法;需要特殊路径,或一个 Controller 只想暴露少量接口时。 ``` func (s *Server) BindObjectMethod(pattern string, object interface{}, method string) ``` BindObjectRest:只能绑定指定的方法名如:GET POST DELECT 只能匹配动词的方法;纯粹的资源操作(CRUD),符合标准 REST 规范。最常用的get,post ## 规范路由 GoFrame中提供了规范化的路由注册方式,注册方法如下 ``` func Handler(ctx context.Context, req *Request) (res *Response, err error) ``` 其中`Request`与`Response`为自定义的结构体。 通过如下方式指定请求方法与路径 ```go type HelloReq struct { g.Meta `path:"/hello" method:"get"` } ``` api内一般定义请求和响应的结构体的 ```go func (c *Hello) Params(ctx context.Context, req *hello.ParamsReq) (res *hello.ParamsRes, error error) { r := g.RequestFromCtx(ctx) name := r.GetQuery("name") r.Response.WriteJson(name) return } ``` name位置是一个var的泛型 getquery第二个参数是个默认值; | **方法名** | **返回类型** | **核心优势** | **Java 类比** | | --------------------- | ------------------------ | -------------------------- | ------------------- | | **GetQuery** | `*gvar.Var` | 链式转换类型极方便 | `getParameter()` | | **GetQueryMap** | `map[string]interface{}` | 快速获取全部原始数据 | `getParameterMap()` | | **GetQueryStruct** | `error` | **全自动绑定,代码最优雅** | **DTO 自动注入** | | **GetQueryMapStrStr** | `map[string]string` | 类型统一,无需转型 | - | 用GetQueryMap来 ```go func (c *Hello) Params(ctx context.Context, req *hello.ParamsReq) (res *hello.ParamsRes, error error) { r := g.RequestFromCtx(ctx) data := r.GetQueryMap(map[string]interface{}{"name": "lisi", "age": "20"}) r.Response.Writeln(data) return } ``` ## goframe的动态路由 主要写在g.Meta的path标签里 | **占位符格式** | **名称** | **匹配规则** | **示例** | | --------------- | -------------- | --------------------------------- | ------------------------------------ | | **`:name`** | **命名占位符** | 匹配两个 `/` 之间的内容(最常用) | `/user/:id` 匹配 `/user/123` | | **`\*any`** | **模糊占位符** | 匹配从当前位置开始的所有后续内容 | `/file/*path` 匹配 `/file/img/a.png` | | **`{pattern}`** | **正则占位符** | 使用正则表达式进行精确匹配 | `/user/{[0-9]+}` 只匹配数字 ID | api ``` package api import ( "github.com/gogf/gf/v2/frame/g" ) type Res struct { g.Meta `mime:"text/html"` } type ParamReq struct { g.Meta `path:"/params/:name" method:"all"` } ``` # homily link的ai预测大模型 1. AI预测大模型功能与特点 • 模型包含六个关键价格:买回价、卖出价、两个预测低点与两个预测高点。 • 采用深度学习算法分析历史数据,实时调整策略以捕捉市场趋势变化。 • 处理流程分为数据预处理、模型构建和数据分析决策三个阶段。 • 已从8月2日开始实际体验,用户可测试其预测功能。 2. 实际预测案例验证 • 英伟达案例显示7月31日预测的8月1日高低点与实际价格误差约0.2%-1%。 • 苹果案例中8月6日预测的次日高点214.81与实际213.64相差1.17美元。 • 通过计算预测价格中值并与当日收盘价对比,可预判次日涨跌方向。 3. 核心使用场景与方法 • 涨跌预判:用前日预测高低点均值对比当日收盘价,高于中值则预判次日上涨。 • 日内交易:依据模型提供的买回价、卖出价在日内进行低吸高抛操作。 • 上涨趋势中参考买回价寻找低吸机会,下跌趋势中按卖出价或预测高点挂单。 4. 模型应用原则与局限性 • 预测结果需结合趋势判断使用,如先确认涨跌概率再执行交易策略。 • 明确告知所有预测存在误差,核心价值在于提供量化参考依据。 • 强调通过AI技术辅助交易决策,但需保持对市场动态的独立判断。