You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
4.6 KiB
4.6 KiB
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为自定义的结构体。
通过如下方式指定请求方法与路径
type HelloReq struct {
g.Meta `path:"/hello" method:"get"`
}
api内一般定义请求和响应的结构体的
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来
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预测大模型
- AI预测大模型功能与特点 • 模型包含六个关键价格:买回价、卖出价、两个预测低点与两个预测高点。 • 采用深度学习算法分析历史数据,实时调整策略以捕捉市场趋势变化。 • 处理流程分为数据预处理、模型构建和数据分析决策三个阶段。 • 已从8月2日开始实际体验,用户可测试其预测功能。
- 实际预测案例验证 • 英伟达案例显示7月31日预测的8月1日高低点与实际价格误差约0.2%-1%。 • 苹果案例中8月6日预测的次日高点214.81与实际213.64相差1.17美元。 • 通过计算预测价格中值并与当日收盘价对比,可预判次日涨跌方向。
- 核心使用场景与方法 • 涨跌预判:用前日预测高低点均值对比当日收盘价,高于中值则预判次日上涨。 • 日内交易:依据模型提供的买回价、卖出价在日内进行低吸高抛操作。 • 上涨趋势中参考买回价寻找低吸机会,下跌趋势中按卖出价或预测高点挂单。
- 模型应用原则与局限性 • 预测结果需结合趋势判断使用,如先确认涨跌概率再执行交易策略。 • 明确告知所有预测存在误差,核心价值在于提供量化参考依据。 • 强调通过AI技术辅助交易决策,但需保持对市场动态的独立判断。