download:深刻Vue3+TypeScript技术栈-coderwhy新课

package main
import (

"io/ioutil""net/http""net/url""fmt""encoding/json"

)

//----------------------------------
// 商品比价调用示例代码 - 聚合数据
// 在线接口文档:http://www.juhe.cn/docs/137
//----------------------------------

const APPKEY = "*" //您申请的APPKEY

func main(){

//1.查问反对的商城信息Request1()//2.比价简略查问接口Request2()//3.比价简单查问接口Request3()

}

//1.查问反对的商城信息
func Request1(){

//请求地址juheURL :="http://api2.juheapi.com/mmb/allsites"//初始化参数param:=url.Values{}//配置请求参数,方法外部已处理urlencode问题,中文参数可能间接传参param.Set("key",APPKEY) //利用APPKEY(利用粗疏页查问)//发送请求data,err:=Get(juheURL,param)if err!=nil{    fmt.Errorf("请求失败,错误信息:\\r\\n%v",err)}else{    var netReturn map[string]interface{}    json.Unmarshal(data,&netReturn)    if netReturn["error_code"].(float64)==0{        fmt.Printf("接口返回result字段是:\\r\\n%v",netReturn["result"])    }}

}

//2.比价简略查问接口
func Request2(){

//请求地址juheURL :="http://api2.juheapi.com/mmb/search/simple"//初始化参数param:=url.Values{}//配置请求参数,方法外部已处理urlencode问题,中文参数可能间接传参param.Set("keyword","") //要查问关键字param.Set("key",APPKEY) //利用APPKEY(利用粗疏页查问)//发送请求data,err:=Get(juheURL,param)if err!=nil{    fmt.Errorf("请求失败,错误信息:\\r\\n%v",err)}else{    var netReturn map[string]interface{}    json.Unmarshal(data,&netReturn)    if netReturn["error_code"].(float64)==0{        fmt.Printf("接口返回result字段是:\\r\\n%v",netReturn["result"])    }}

}

//3.比价简单查问接口
func Request3(){

//请求地址juheURL :="http://api2.juheapi.com/mmb/search/complex"//初始化参数param:=url.Values{}//配置请求参数,方法外部已处理urlencode问题,中文参数可能间接传参param.Set("keyword","") //搜寻关键字param.Set("key",APPKEY) //利用APPKEY(利用粗疏页查问)param.Set("Site","") //商城编号,默认为0,即所有param.Set("PriceMin","") // 最低价格,0示意无最低价格限度param.Set("PriceMax","") //最高价格,0示意无最高价格限度param.Set("PageNum","") //页号,大于0param.Set("PageSize","") //每页返回后果数,下限为50param.Set("Orderby","") //排序规定,1、score 按权重从高到底排序,默认  2、price 按价格从底到高排序 3、sell 按销售从高到底排序param.Set("ZiYing","") //是否自营param.Set("ExtraParameter","") //0:后果蕴含淘宝数据,1:后果不蕴含淘宝数据//发送请求data,err:=Get(juheURL,param)if err!=nil{    fmt.Errorf("请求失败,错误信息:\\r\\n%v",err)}else{    var netReturn map[string]interface{}    json.Unmarshal(data,&netReturn)    if netReturn["error_code"].(float64)==0{        fmt.Printf("接口返回result字段是:\\r\\n%v",netReturn["result"])    }}

}

// get 网络请求
func Get(apiURL string,params url.Values)(rs[]byte ,err error){

var Url *url.URLUrl,err=url.Parse(apiURL)if err!=nil{    fmt.Printf("解析url谬误:\\r\\n%v",err)    return nil,err}//如果参数中有中文参数,这个方法会进行URLEncodeUrl.RawQuery=params.Encode()resp,err:=http.Get(Url.String())if err!=nil{    fmt.Println("err:",err)    return nil,err}defer resp.Body.Close()return ioutil.ReadAll(resp.Body)

}

// post 网络请求 ,params 是url.Values类型
func Post(apiURL string, params url.Values)(rs[]byte,err error){

resp,err:=http.PostForm(apiURL, params)if err!=nil{    return nil ,err}defer resp.Body.Close()return ioutil.ReadAll(resp.Body)