go Http Post 发送文件流
发布时间:2022-01-28 编辑:jiaochengji.com
教程集为您提供go Http Post 发送文件流等资源,欢迎您收藏本站,我们将为您提供最新的go Http Post 发送文件流资源
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"><path stroke-linecap="round" d="M5,0 0,2.5 5,5z" id="raphael-marker-block" style="-webkit-tap-highlight-color: rgba(0, 0, 0, 0);"/></svg><pre class="prettyprint"><code class=" hljs go"><span class="hljs-keyword">package</span> main
<span class="hljs-keyword">import</span> (
<span class="hljs-string">"net/http"</span>
<span class="hljs-string">"net/url"</span>
<span class="hljs-string">"fmt"</span>
<span class="hljs-string">"io/ioutil"</span>
_ <span class="hljs-string">"io"</span>
<span class="hljs-string">"bytes"</span>
)
<span class="hljs-keyword">func</span> main() {
postFile()
}
<span class="hljs-keyword">func</span> post() {
<span class="hljs-comment">//这是一个Post 参数会被返回的地址</span>
strinUrl:=<span class="hljs-string">"http://localhost:8080/aaa"</span><span class="hljs-string">`这里写代码片`</span>
resopne,err:= http.PostForm(strinUrl,url.Values{<span class="hljs-string">"num"</span>:{<span class="hljs-string">"456"</span>},<span class="hljs-string">"num1"</span>:{<span class="hljs-string">"123"</span>}})
<span class="hljs-keyword">if</span> err !=<span class="hljs-constant">nil</span> {
fmt.Println(<span class="hljs-string">"err="</span>,err)
}
<span class="hljs-keyword">defer</span> <span class="hljs-keyword">func</span>() {
resopne.Body.Close()
fmt.Println(<span class="hljs-string">"finish"</span>)
}()
body,err:=ioutil.ReadAll(resopne.Body)
<span class="hljs-keyword">if</span> err!=<span class="hljs-constant">nil</span> {
fmt.Println(<span class="hljs-string">" post err="</span>,err)
}
fmt.Println(<span class="hljs-typename">string</span>(body))
}
<span class="hljs-keyword">func</span> postFile(){
<span class="hljs-comment">//这是一个Post 参数会被返回的地址</span>
strinUrl:=<span class="hljs-string">"http://localhost:8080/aaa"</span>
<span class="hljs-typename">byte</span>,err:=ioutil.ReadFile(<span class="hljs-string">"post.txt"</span>)
resopne,err :=http.Post(strinUrl,<span class="hljs-string">"multipart/form-data"</span>,bytes.NewReader(<span class="hljs-typename">byte</span>))
<span class="hljs-keyword">if</span> err !=<span class="hljs-constant">nil</span> {
fmt.Println(<span class="hljs-string">"err="</span>,err)
}
<span class="hljs-keyword">defer</span> <span class="hljs-keyword">func</span>() {
resopne.Body.Close()
fmt.Println(<span class="hljs-string">"finish"</span>)
}()
body,err:=ioutil.ReadAll(resopne.Body)
<span class="hljs-keyword">if</span> err!=<span class="hljs-constant">nil</span> {
fmt.Println(<span class="hljs-string">" post err="</span>,err)
}
fmt.Println(<span class="hljs-typename">string</span>(body))
}
</code></pre>
水滴石穿。这里把Go Http Post 参数的函数也贴了处理主要对比两者不同之处。
到此这篇关于“go Http Post 发送文件流”的文章就介绍到这了,更多文章或继续浏览下面的相关文章,希望大家以后多多支持JQ教程网!您可能感兴趣的文章:
go Http Post 发送文件流
Go Web编程--解析JSON请求和生成JSON响应
在 Go 语言项目中使用 Travis CI
Go并发模式:管道和取消
Go语言微服务开发框架实践-go chassis(中篇)
Go Base
post访问接口传多个参数_在Go中访问HTTP POST参数
php CURL不使用文件存取COOKIE示例
(三)go-kit服务接口限流
《Perl编程24学时教程》笔记第22课 CGI发送电子邮件
上一篇:Golang - 访问数据库报错后程序继续运行
下一篇:go 网络编程
[关闭]