栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Go语言

GO通过HTTP获取API的返回值(response)

Go语言 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

GO通过HTTP获取API的返回值(response)

目录
    • net/http
    • net/url

net/http
import "net/http"

Go语言提供了HTTP客户端和服务端的实现,也就是net/http包
我们可以通过包中的Get,Head,Post,PostForm函数发出HTTP/HTTPS请求

package main

import (
	"fmt"
    "io/ioutil"
    "net/http"
)
func main{
	response, err := http.Get("https://www.baidu.com")
	if err != nil{
		//...
	} 
	defer response.Body.Close()//在回复后必须关闭回复的主体
	body,err := ioutil.ReadAll(response.body)
	if err == nil{
		fmt.Println(string(body))
	}
}

这样即可获取https://www.baidu.com返回的结果,当然,在经过string(body)处理后,我们获取到的数据格式为string,我们需要将它转换为**map[string]interface{}**格式

func Transformation(response *http.Response)  		map[string]interface{}{
	var result map[string]interface{}
	body, err := ioutil.ReadAll(response.Body)
	if err == nil {
		json.Unmarshal([]byte(string(body)), &result)
	}
	return result
}

这样即可转换为**map[string]interface{}**格式,方便我们取值和使用

net/url

如果URL参数中有汉字,那么我们需要将汉字转换,这里使用net/url包进行转换,具体使用方法见代码:

import (
	"net/url"
)

func StrTransformation(str1 string) string {
	str2 := url.QueryEscape(str1)
	return str2
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/909222.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号