- 一个可以自动构建CURD控制器的go-api服务,参考之前写的基础版本进行演变而来 GoRbacApiService
仅可用于学习分析底层代码,禁止用于商业行为。
本源码由追梦小窝免费分享提供学习使用本资源并未取得原始权利人的授权,不可商用。
如因擅自商用引起的相关纠纷及法律责任,由使用人全部承担。请于下载后24小时内删除,谢谢支持!
gin-gonic/gin 【Gin框架】
go-playground/validator 【validator表单验证器】
concurrent-map 【concurrent-map替换原生map解决并发读写】
gorm.io/gorm 【Gorm数据查询工具】
go-redis/redis 【go-redis缓存】
spf13/viper 【配置读取工具】
uber-go/zap 【zap日志库】
日志TrackId链路追踪,包含mysql语句
https://github.com/iszmxw/jsy_admin
- 打包期权合约多少秒后消费服务(需要检查redis配置)
GOOS=linux GOARCH=amd64 go build -o optionContractService service/option_contract/option_contract.go
Redis部分设置
修改配置文件redis.conf,找到Event notification部分。
将notify-keyspace-events Ex的注释打开或者添加该配置,其中E代表Keyevent,此种通知会返回key的名字,x代表超时事件。
如果notify-keyspace-events ""配置没有被注释的话要注释掉,否则不会生效。
保存后重启redis,一定要使用当前配置文件重启,例如src/redis-server redis.conf
- 打包火币网socket服务
GOOS=linux GOARCH=amd64 go build -o huobiService service/huobi/socket.go
- 打包api接口
GOOS=linux GOARCH=amd64 go build -o apiService main.go
当前可用余额*百分比/当前限价=买入货币
卖出百分比算法:市价(限价)*卖出数量=所得货币
{
"merchant_no": "070255",
"timestamp": "1637661524",
"sign_type": "MD5",
"params": {
"merchant_ref": "I2021112317564133689",
"system_ref": "TQ1637661402N61AT",
"amount": "100.00",
"pay_amount": "100.00",
"fee": "6.00",
"status": 1,
"success_time": 1637661523,
"extend_params": "",
"product": "ThaiQR"
},
"sign": "2d1ca4805be8b51f62f49f6fad1c879e"
}
- 可以放在header头部
字段名 | 类型 | 说明 |
---|---|---|
token | string | 用户登录时获取的token |
- 请求地址
/v1/api/user/login
- 请求参数
字段名 | 类型 | 说明 |
---|---|---|
string | 邮箱 | |
password | string | 密码 |
{
"email": "[email protected]",
"password": "123456"
}
- 返回参数
字段名 | 类型 | 说明 |
---|---|---|
code | string | 错误代码 |
msg | string | 消息提示 |
reqId | string | 请求Id |
result.token | string | token钥匙 |
result.msg | int | 用户id |
success | bool | 成功/失败 |
{
"code": "200",
"msg": "success.",
"reqId": "94ee73c7-be1c-4ed0-a9ed-f0c79a990247",
"result": {
"token": "d9433050-816c-4faf-85b3-a8a0fee2006b",
"uid": 503
},
"success": true
}