http.Post-in-go不起作用?

http.Post-in-go不起作用?,go,Go,我正试图在cli工具中使用这段go代码实现一个文件上传API。post似乎甚至没有击中服务器,但此代码运行时没有错误,结果消息是一个空字符串 旋度有效。 其他职位工作 有什么建议吗 文件,错误:=os.Openc.Args.Get0 如果出错!=零{ 出境者 } 延迟文件。关闭 fmt.PrintAbout要上载文件,c.Args.Get0\n; res,err:=http.Postfmt.Sprintf%s/upload,config.Host,application/octet流,文件 如果

我正试图在cli工具中使用这段go代码实现一个文件上传API。post似乎甚至没有击中服务器,但此代码运行时没有错误,结果消息是一个空字符串

旋度有效。 其他职位工作

有什么建议吗

文件,错误:=os.Openc.Args.Get0 如果出错!=零{ 出境者 } 延迟文件。关闭 fmt.PrintAbout要上载文件,c.Args.Get0\n; res,err:=http.Postfmt.Sprintf%s/upload,config.Host,application/octet流,文件 如果出错!=零{ 出境者 } 延迟res.Body.Close 消息,错误:=ioutil.ReadAllres.Body 如果出错!=零{ 出境者 } fmt.PrintUpload结果:,stringmessage\n
谢谢你的指点。我从没想过要检查状态码。我得到的是307个临时重定向,不是200个。我的解决方案是按照“位置”循环,直到达到最大重定向计数。我读过go中默认的http客户机代码遵循重定向,所以我有点惊讶我必须这样做。go和http编程对我来说都是新手,我非常感谢他们的帮助

状态代码是什么?fmt.Sprintf%s/upload,config.hosts的输出情况如何?假设多家大公司在生产中广泛使用的一种语言的核心功能出现故障,通常是一种徒劳的想法。不起作用的不太可能是http.Post,更可能是您的代码、操作环境或远程主机。每当HTTP请求不能按预期工作时,至少检查响应代码总是一个好主意。@Adrian,我唯一的假设是我做错了什么,这就是我发布代码片段的原因。我将检查响应代码。。。谢谢对于调试非常有用。胡乱猜测:服务器需要一个多方表单,但您正在正文中发送文件本身。也可以尝试,但请注意,并非所有的curl选项都受支持。