深入Vue3+TypeScript技术栈-coderwhy新课

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","") //页号,大于0
param.Set("PageSize","") //每页返回结果数,上限为50
param.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.URL
Url,err=url.Parse(apiURL)
if err!=nil{
    fmt.Printf("解析url错误:\\r\\n%v",err)
    return nil,err
}
//假如参数中有中文参数,这个办法会停止URLEncode
Url.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)

你可能感兴趣的:(typescript)