接口返回错误设置
This commit is contained in:
@@ -1,6 +1,7 @@
|
|||||||
package controllers
|
package controllers
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"git.rosy.net.cn/baseapi/utils"
|
"git.rosy.net.cn/baseapi/utils"
|
||||||
"git.rosy.net.cn/jx-callback/business/model"
|
"git.rosy.net.cn/jx-callback/business/model"
|
||||||
@@ -14,6 +15,13 @@ type ApiController struct {
|
|||||||
web.Controller
|
web.Controller
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const (
|
||||||
|
keyAppID = "app_id"
|
||||||
|
keyTimestamp = "timestamp"
|
||||||
|
keyMethod = "method"
|
||||||
|
keySign = "sign"
|
||||||
|
)
|
||||||
|
|
||||||
var (
|
var (
|
||||||
routerMap map[string]reflect.Value
|
routerMap map[string]reflect.Value
|
||||||
)
|
)
|
||||||
@@ -59,14 +67,14 @@ func (c *ApiController) CallOpenAPI() {
|
|||||||
//timestamp int64
|
//timestamp int64
|
||||||
)
|
)
|
||||||
//判断必传参数是否传入begin
|
//判断必传参数是否传入begin
|
||||||
if appID = c.GetString("app_id"); appID == "" {
|
if appID = c.GetString(keyAppID); appID == "" {
|
||||||
requireParams = append(requireParams, "app_id")
|
requireParams = append(requireParams, keyAppID)
|
||||||
}
|
}
|
||||||
if method = c.GetString("method"); method == "" {
|
if method = c.GetString(keyMethod); method == "" {
|
||||||
requireParams = append(requireParams, "method")
|
requireParams = append(requireParams, keyMethod)
|
||||||
}
|
}
|
||||||
if sign = c.GetString("sign"); sign == "" {
|
if sign = c.GetString(keySign); sign == "" {
|
||||||
requireParams = append(requireParams, "sign")
|
requireParams = append(requireParams, keySign)
|
||||||
}
|
}
|
||||||
//if timestamp, err = c.GetInt64("timestamp"); err != nil {
|
//if timestamp, err = c.GetInt64("timestamp"); err != nil {
|
||||||
// requireParams = append(requireParams, "timestamp")
|
// requireParams = append(requireParams, "timestamp")
|
||||||
@@ -97,9 +105,9 @@ func (c *ApiController) CallOpenAPI() {
|
|||||||
//call
|
//call
|
||||||
urls, _ = c.Input()
|
urls, _ = c.Input()
|
||||||
dataMap = utils.URLValues2Map(urls)
|
dataMap = utils.URLValues2Map(urls)
|
||||||
delete(dataMap, "app_id")
|
delete(dataMap, keyAppID)
|
||||||
delete(dataMap, "method")
|
delete(dataMap, keyMethod)
|
||||||
delete(dataMap, "timestamp")
|
delete(dataMap, keyTimestamp)
|
||||||
parms = []reflect.Value{reflect.ValueOf(dataMap)}
|
parms = []reflect.Value{reflect.ValueOf(dataMap)}
|
||||||
if routerMap[method] == reflect.ValueOf(nil) {
|
if routerMap[method] == reflect.ValueOf(nil) {
|
||||||
errCode = model.ErrCodeOpenAPIParamErrMethod
|
errCode = model.ErrCodeOpenAPIParamErrMethod
|
||||||
@@ -108,7 +116,10 @@ func (c *ApiController) CallOpenAPI() {
|
|||||||
globals.SugarLogger.Debugf("Begin API CallOpenAPI Method: %s, accessUUID:%s, sign:%s\n", method, accessID, sign)
|
globals.SugarLogger.Debugf("Begin API CallOpenAPI Method: %s, accessUUID:%s, sign:%s\n", method, accessID, sign)
|
||||||
if err == nil {
|
if err == nil {
|
||||||
result = routerMap[method].Call(parms)
|
result = routerMap[method].Call(parms)
|
||||||
fmt.Println("routerMap[method].Call(parms)", result)
|
if !result[1].IsNil() {
|
||||||
|
err = fmt.Errorf(result[1].String())
|
||||||
|
goto end
|
||||||
|
}
|
||||||
goto success
|
goto success
|
||||||
} else {
|
} else {
|
||||||
callResult.Code = errCode
|
callResult.Code = errCode
|
||||||
@@ -124,12 +135,16 @@ end:
|
|||||||
success:
|
success:
|
||||||
{
|
{
|
||||||
callResult.Code = model.ErrCodeSuccess
|
callResult.Code = model.ErrCodeSuccess
|
||||||
callResult.Data = ""
|
callResult.Data = result[0].String()
|
||||||
c.Data["json"] = callResult
|
c.Data["json"] = callResult
|
||||||
c.ServeJSON()
|
c.ServeJSON()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *ApiController) AddPrint(dataMap map[string]interface{}) (data interface{}, err error) {
|
func (c *ApiController) AddPrint(dataMap map[string]interface{}) (data string, err error) {
|
||||||
return fmt.Println("call AddPrint success ...", dataMap)
|
if dataMap[keySign].(string) != "222" {
|
||||||
|
return "", buildParamErr(keySign)
|
||||||
|
}
|
||||||
|
data2, err := json.Marshal(dataMap)
|
||||||
|
return string(data2), err
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user