我正在试着发帖子,但是我做不到.另一边什么也没收到.

应该是这样的吗?我知道PostForm的功能,但我想我不能使用它,因为它不能用httputil测试,对吗?

hc := http.Client{}
req, err := http.NewRequest("POST", APIURL, nil)

form := url.Values{}
form.Add("ln", c.ln)
form.Add("ip", c.ip)
form.Add("ua", c.ua)
req.PostForm = form
req.Header.Add("Content-Type", "application/x-www-form-urlencoded")

glog.Info("form was %v", form)
resp, err := hc.Do(req)

推荐答案

你的 idea 基本上是正确的,只是发送表格是错误的.表单属于请求的主体.

req, err := http.NewRequest("POST", url, strings.NewReader(form.Encode()))

Go相关问答推荐

SEARCH On Conflict Clause不考虑乐观锁定版本

租户GUID X的租户不存在self 邮箱帐户的租户(我是唯一的成员)

为什么没有正确生成这些元组?

什么东西逃到了堆里?

通过渠道和goroutines增值1000倍

如何解析Go-Gin多部分请求中的 struct 切片

无法使用exec从管道中读取.Go中的命令

如果第一次匹配条件,如何跳过切片中的值

将字符串格式的x509证书生成主题名称

在 Go 中使用 Apache Arrow 按时间间隔对事件进行分区

MQTT 客户端没有收到另一个客户端发送的消息

也许在 golang 中包(字符串和字符串类型不匹配)

Go泛型:无效的复合文字

转换朴素递归硬币问题时的记忆错误

确保 Go 1.20 编译时的严格可比性?

如何使用 Docker 引擎 SDK 和 Golang 运行 docker 挂载卷

数据流中的无根单元错误,从 Golang 中的 PubSub 到 Bigquery

Golang invopop jsonschema 使用 if/then/else

如何在没有内存分配的情况下压缩和发布文件

使用 bolthold 3 条件进行 boltDB 查询