初级会员
  • 第 12473 位会员
  • radrupt
  • 2017-09-19 15:53:57
  • Offline
  • 20 43

最近发布的文章

    暂无

最近分享的资源

    暂无

最近发布的项目

    暂无

最近的评论

  • 我的结论是如果要记录消耗时间,使用interceptor这种方案是无效的。 目前的做法是只记录请求数据和相应数据,请求消耗的时间不做记录。 即在w.write所在的方法里打印log。 func success(w http.ResponseWriter, r *http.Request, message string, data interface{}) { w.Header().Set("content-type","application/json") w.WriteHeader(http.StatusOK) output := make(map[string]interface{}) output["result"] = true output["message"] = message output["data"] = data outputJson, _ := json.Marshal(output) w.Write(outputJson) logReqAndRes(output,r) }
  • #1 @polaris 嗯,谢谢。 不过不同的动态语言里单双引号应该也不一样。
  • #1 @tk103331 明白了,谢谢! 之前一直纠结于,根据以往的经验,所有的路由在程序启动阶段应该就注册好了,那么在运行web服务,监听请求的时候,路由应该是保持固定的了,也就是不会再有写操作。
  • 谢谢,找到原因了,SmsResponse构造错了 error ``` type ( SmsResult struct { RequestId string `json:"RequestId"` Code string `json:"Code"` Message string `json:"Message"` BizId string `json:"BizId"` } SmsResponse struct { SendSmsResponse SmsResult `json:"SendSmsResponse"` } ) ``` correct ``` type ( SmsResponse struct { RequestId string `json:"RequestId"` Code string `json:"Code"` Message string `json:"Message"` BizId string `json:"BizId"` } ) ```