为了账号安全,请及时绑定邮箱和手机立即绑定

如何从请求中读取然后使用该结果执行 POST 请求然后处理其结果

如何从请求中读取然后使用该结果执行 POST 请求然后处理其结果

Go
繁星coding 2021-08-16 19:02:18
我正在尝试从请求中读取,然后使用该结果向另一个端点发出 POST 请求,然后处理其结果,然后以 JSON 形式返回其结果。到目前为止,我有以下代码:// POST func (u *UserResource) authenticate(request *restful.Request, response *restful.Response) {    Api := Api{url: "http://api.com/api"}    usr := new(User)    err := request.ReadEntity(&usr)    if err != nil {        response.WriteErrorString(http.StatusInternalServerError, err.Error())        return    }    api_resp, err := http.Post(Api.url, "text/plain", bytes.NewBuffer(usr))    if err != nil {        response.WriteErrorString(http.StatusInternalServerError, err.Error())        return    }    defer api_resp.Body.Close()    body, err := ioutil.ReadAll(api_resp.Body)    response.WriteHeader(http.StatusCreated)    err = xml.Unmarshal(body, usr)    if err != nil {        fmt.Printf("error: %v", err)        return    }//  result, err := json.Marshal(usr)//  response.Write(result)    response.WriteEntity(&usr)    fmt.Printf("Name: %q\n", usr.UserName)}我正在使用Go Restful包进行写入和读取。编译文件时出现此错误:src\login.go:59: cannot use usr (type *User) as type []byte in argument to bytes.NewBuffer解决此问题的最佳方法是什么,以便我可以正确执行有效负载的 POST?
查看完整描述

2 回答

  • 2 回答
  • 0 关注
  • 165 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信