Chinaunix首页 | 论坛 | 博客
  • 博客访问: 305594
  • 博文数量: 214
  • 博客积分: 4258
  • 博客等级: 上校
  • 技术积分: 2021
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-02 09:16
个人简介

http://blog.csdn.net/ly21st http://ly21st.blog.chinaunix.net

文章分类

全部博文(214)

文章存档

2018年(16)

2015年(1)

2014年(2)

2012年(22)

2011年(173)

分类: C/C++

2018-01-31 00:09:43

通过url获取报文

点击(此处)折叠或打开


  1. // Fetch prints the content found at each specified URL.
  2. package main

  3. import (
  4.     "fmt"
  5.     "io/ioutil"
  6.     "net/http"
  7.     "os"
  8. )

  9. func main() {
  10.     for _, url := range os.Args[1:] {
  11.         resp, err := http.Get(url)
  12.         if err != nil {
  13.             fmt.Fprintf(os.Stderr, "fetch: %v\n", err)
  14.             os.Exit(1)
  15.         }
  16.         b, err := ioutil.ReadAll(resp.Body)
  17.         resp.Body.Close()
  18.         if err != nil {
  19.             fmt.Fprintf(os.Stderr, "fetch: reading %s: %v\n", url, err)
  20.             os.Exit(1)
  21.         }
  22.         fmt.Printf("%s", b)
  23.     }
  24. }

  25. //!-
输出结果:


----------------------------------------------------------------------------------------------
使用io.Copy从网络读取数据到标准输出,而不是ioutil.ReadAll函数

点击(此处)折叠或打开

  1. package main

  2. import (
  3.     "fmt"
  4.     "io"
  5.     //    "io/ioutil"
  6.     "net/http"
  7.     "os"
  8. )

  9. func main() {
  10.     for _, url := range os.Args[1:] {
  11.         resp, err := http.Get(url)
  12.         if err != nil {
  13.             fmt.Fprintf(os.Stderr, "fetch: %v\n", err)
  14.             os.Exit(1)
  15.         }

  16.         _, err = io.Copy(os.Stdout, resp.Body)
  17.         resp.Body.Close()
  18.         if err != nil {
  19.             fmt.Fprintf(os.Stderr, "fetch: reading %s: %v\n", url, err)
  20.             os.Exit(1)
  21.         }
  22.     }
  23. }

  24. //!-


阅读(546) | 评论(0) | 转发(0) |
0

上一篇:log操作

下一篇:获取多个url

给主人留下些什么吧!~~