func deserialize(request *http.Request,typ reflect.Type) (interface{}, *httpNet.HandlerError){ data,e:=ioutil.ReadAll(request.Body) fmt.Println(string(data)) if e !=nil{ return nil,&httpNet.HandlerError{e,"could not read request",http.StatusBadRequest} } v:=typ.Elem() payload:=reflect.New(v).Elem().Interface() eaa:= json.NewDecoder(request.Body).Decode(payload) if e!=nil{ fmt.Println(eaa.Error()) } fmt.Println(payload) fmt.Println(reflect.ValueOf(payload) ) return payload,nil}调用它:r,_:= deserialize(request,reflect.TypeOf(&testData{}))它不会抛出错误并且在我看来是完全有效的操作,但结果是期望类型的空结构。有什么问题吗?
1 回答
- 1 回答
- 0 关注
- 214 浏览
添加回答
举报
0/150
提交
取消