文档章节

golang http请求示例

梁二狗
 梁二狗
发布于 2017/04/09 00:19
字数 208
阅读 6
收藏 0
点赞 0
评论 0

这个我忘记是哪位大神哪里抄的代码,觉得很好就保留在这里,自己用的时候好参考

package demo

import (
	"fmt"
	"io/ioutil"
	"net/http"
	"net/url"
	"strings"
)



func HttpGet()  {
	resp,err := http.Get("http://mini.helloworld.com/index.php?r=demo/test")
	if err != nil {
		//handler err
	}

	defer resp.Body.Close()
	body,err := ioutil.ReadAll(resp.Body)
	if err != nil {
		//handler error
	}
	fmt.Println(string(body))
}

func HttpPost()  {
	resp,err := http.Post("http://mini.helloworld.com/index.php?r=demo/post" ,
		"application/x-www-form-urlencoded",
	strings.NewReader("name=cjb&hi=wuping&t=1"))
	if err != nil {
		fmt.Println(err)
	}
	defer resp.Body.Close()
	body,err := ioutil.ReadAll(resp.Body);
	if err != nil {
		//handler error
	}

	fmt.Println(string(body))


}

func HttpPostForm()  {
	resp,err := http.PostForm("http://mini.helloworld.com/index.php?r=demo/post",
			url.Values{"key":{"Value"},"id":{"123"},"name":{"wuping"}})
	if err != nil {
		//handler error
	}
	defer resp.Body.Close()
	body,err := ioutil.ReadAll(resp.Body)
	if err != nil {
		//handler error
	}
	fmt.Println(string(body))
}

func HttpDo()  {
	client := &http.Client{}
	req,err := http.NewRequest("POST","http://mini.helloworld.com/index.php?r=demo/post",strings.NewReader("name=cjb&today=4.1"))
	if err != nil {
		//handle error
	}
	req.Header.Set("Content-Type", "application/x-www-form-urlencoded")
	req.Header.Set("Cookie", "name=anny")
	resp,err := client.Do(req)
	defer resp.Body.Close()
	body,err := ioutil.ReadAll(resp.Body)
	if err != nil {
		//handle error
	}

	fmt.Println(string(body))
}

本文转载自:

共有 人打赏支持
梁二狗
粉丝 0
博文 12
码字总数 547
作品 0
成都
程序员
golang web编程

golang web编程 go语言web框架beego的helloword示例 //安装beego模块 //E:>set GOPATH=E:resourceprojectweb_crawler //E:>go get github.com/… golang web编程五:提交url抓取页面内容并且......

d_watson
2016/05/27
47
0
Golang开发支持平滑升级(优雅重启)的HTTP服务

前段时间用Golang在做一个HTTP的接口,因编译型语言的特性,修改了代码需要重新编译可执行文件,关闭正在运行的老程序,并启动新程序。对于访问量较大的面向用户的产品,关闭、重启的过程中势...

一曲
2016/12/15
183
0
golang连接mysql操作及动态连接池设置

golang本身没有提供连接mysql的驱动,但是定义了标准接口供第三方开发驱动。这里连接mysql可以使用第三方库,第三方库推荐使用https://github.com/Go-SQL-Driver/MySQL这个驱动,更新维护都比...

mickelfeng
03/02
0
0
golang实现http的get和post

golang要请求远程网页,可以使用net/http包中的client提供的方法实现。查看了官方网站有一些示例,没有太全面的例子,于是自己整理了一下。 get请求 get请求可以直接http.Get方法,非常简单。...

徐学良
2016/11/17
48
0
go client http post upload上传及 server 参数获取

go upload 遇到的问题 首先需要知道client是如何通过 http 协议 实现信息和参数的传递,以及server是怎么接受参数. 可以看两篇博客 : Go发起Http请求及获取相关参数 golang web开发获取get、...

solate
2016/09/01
538
2
golang net http库相关超时的设置

net.http 包中的超时设置 服务端 app.Server.ReadTimeout app.Server.WriteTimeout 是针对所有请求设置的选项 默认 net.http keepalived 开启,超时时间为 3 分钟,如下 1942 type tcpKeepA...

智深
2014/07/26
0
0
golang入门学习笔记(一)

作者: 一字马胡 转载标志 【2017-11-21】 更新日志 日期 更新内容 备注 2017-11-21 新建文章 go语言入门笔记(一) 准备环境 在Mac下,可以使用下面的命令安装golang: 完成安装之后,可以命...

一字马胡
2017/11/21
0
0
验证 - Golang performance vs python vs .net C#

周末看到一篇文章,对golang python c#做了简单的性能测试,基于文章示例,我验证了下过程和结论,原文在如下地址: http://blog.163.com/back-kc/blog/static/60657320114252541156/ 在文章...

dijin
2013/07/15
0
2
使用Golang实现简单Ping过程

引言 关于各种语言实现Ping已经是大家喜闻乐见的事情了,网络上利用Golang实现Ping已经有比较详细的代码示例,但大多是仅仅是实现了Request过程,而对Response的回显内容并没有做接收。而Pin...

Micooz
2014/08/11
0
13
Go语言API开发框架--PhalGo

前言 PhalGo是一个Go语言开发的一体化开发框架,主要用于API开发,因为使用ECHO框架作为http服务,MVC模式一样可以使用,牛顿曾经说过"如果我比别人看得远,那是因为我站在巨人的肩膀上",既然Gol...

喵了_个咪
2016/06/03
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

pbgo: 基于Protobuf的迷你RPC/REST框架

https://www.oschina.net/p/pbgo

chai2010
18分钟前
0
0
rsync工具介绍、常用选项以及通过ssh同步

linux下的文件同步工具 rsync rsync是非常实用的一个同步工具,可以从a机器到b机器传输一个文件,也可以备份数据,系统默认没有这个工具,要使用命令 yum install -y rsync 安装。 rsync的命...

黄昏残影
34分钟前
0
0
OSChina 周四乱弹 —— 表妹要嫁人 舅妈叮嘱……

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @哈哈哈哈哈嗝:一定要听——The Pancakes的单曲《咁咁咁》 《咁咁咁》- The Pancakes 手机党少年们想听歌,请使劲儿戳(这里) @clouddyy :...

小小编辑
今天
108
4
流利阅读笔记30-20180719待学习

重磅:让人类得老年痴呆的竟是它? Lala 2018-07-19 1.今日导读 去年奥斯卡最佳动画长片《寻梦环游记》里有一句经典台词:“比死亡更可怕的,是遗忘”。在电影中,年迈的曾祖母会重复说一样的...

aibinxiao
今天
3
0
1.16 Linux机器相互登录

Linux机器之间以密码方式互相登录 运行命令#ssh [ip address],标准命令:#ssh [username]@ip, 如果没有写用户名,则默认为系统当前登录的用户 命令#w查看系统负载,可查看到连接到该主机的...

小丑鱼00
今天
0
0
about git flow

  昨天元芳做了git分支管理规范的分享,为了拓展大家关于git分支的认知,这里我特意再分享这两个关于git flow的链接,大家可以看一下。 Git 工作流程 Git分支管理策略   git flow本质上是...

qwfys
今天
2
0
Linux系统日志文件

/var/log/messages linux系统总日志 /etc/logrotate.conf 日志切割配置文件 参考https://my.oschina.net/u/2000675/blog/908189 dmesg命令 dmesg’命令显示linux内核的环形缓冲区信息,我们可...

chencheng-linux
今天
1
0
MacOS下给树莓派安装Raspbian系统

下载镜像 前往 树莓派官网 下载镜像。 点击 最新版Raspbian 下载最新版镜像。 下载后请,通过 访达 双击解压,或通过 unzip 命令解压。 检查下载的文件 ls -lh -rw-r--r-- 1 dingdayu s...

dingdayu
今天
1
0
spring boot使用通用mapper(tk.mapper) ,id自增和回显等问题

最近项目使用到tk.mapper设置id自增,数据库是mysql。在使用通用mapper主键生成过程中有一些问题,在总结一下。 1、UUID生成方式-字符串主键 在主键上增加注解 @Id @GeneratedValue...

北岩
今天
2
0
告警系统邮件引擎、运行告警系统

告警系统邮件引擎 cd mail vim mail.py #!/usr/bin/env python#-*- coding: UTF-8 -*-import os,sysreload(sys)sys.setdefaultencoding('utf8')import getoptimport smtplibfr......

Zhouliang6
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部