| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 | package pddimport (	"duoduo/conf"	"fmt"	"github.com/asmcos/requests"	"reflect"	"strconv")//func DuoDuoGet(url string) (outData string, err error) {	req := requests.Requests()	resp, err := req.Get(url)	if err != nil {		return "", err	} else {		fmt.Print("resp = ", resp.R)		return resp.Text(), err	}}func Sign() {}// 解析 拼接请求func Get(getData interface{}, url string) (outData string, err error) {	//加载配置	confIni, errConf := conf.ConnIni()	if errConf != nil {		fmt.Println(errConf)	}	host := confIni.MustValue("tisp", "postadd")	// 1、通过json变量来获取所有Get的参数	parameter := ""	getType := reflect.TypeOf(getData)	getValue := reflect.ValueOf(getData)	for i := 0; i < getType.NumField(); i++ {		valueType := getType.Field(i).Type.String()		value := getValue.Field(i)		tagName := getType.Field(i).Tag.Get("json")		// 如果是int类型,并且是0,抛弃		if valueType == "int" && value.Int() != 0 {			if parameter != "" {				parameter += "&"			}			parameter += tagName + "=" + strconv.FormatInt(value.Int(), 10)		}		// 如果是string类型,并且是空字符串,抛弃。		if valueType == "string" && value.String() != "" {			if parameter != "" {				parameter += "&"			}			parameter += tagName + "=" + value.String()		}	}	// 2、组合Url	urlAddress := fmt.Sprintf("%s%s?%s", host, url, parameter)	fmt.Println("url = ", urlAddress)	// 3、请求Html	req := requests.Requests()	resp, err := req.Get(urlAddress)	if err != nil {		fmt.Println("err = ", err.Error())		return "", err	} else {		return resp.Text(), nil	}}
 |