| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 | 
							- package pdd
 
- import (
 
- 	"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
 
- 	}
 
- }
 
 
  |