联系客服: iP138.com客服89932929 iP138.com客服1586314992

Go语言调用快递查询接口示例:

                                            package main

                                            import (
                                                "encoding/json"
                                                "encoding/xml"
                                                "fmt"
                                                "io/ioutil"
                                                "net/http"
                                            )

                                            const (
                                                URL   = "https://api.ip138.com/express/info"
                                                TOKEN = "bd4c2bf9a38ab06f7cae88c9759ee172"
                                            )

                                            //----------------------------------
                                            // 调用示例代码
                                            //----------------------------------
                                            //json struct
                                            type jsoninfo struct {
                                                Status  string    `json:"status"`
                                                code    string    `json:"code"`
                                                Data    string    `json:"data"`
                                            }

                                            func main() {
                                                getExpress("100613574827")
                                            }

                                            func getExpress(no string) {
                                                queryUrl := fmt.Sprintf("%s?no=%s",URL,no)
                                                client := &http.Client{}
                                                reqest, err := http.NewRequest("GET",queryUrl,nil)

                                                if err != nil {
                                                    fmt.Println("Fatal error ",err.Error())
                                                }

                                                reqest.Header.Add("token",TOKEN)
                                                response, err := client.Do(reqest)
                                                defer response.Body.Close()

                                                if err != nil {
                                                    fmt.Println("Fatal error ",err.Error())
                                                }
                                                if response.StatusCode == 200 {
                                                    bodyByte, _ := ioutil.ReadAll(response.Body)
                                                    var info jsoninfo
                                                    json.Unmarshal(bodyByte,&info)
                                                }

                                                return
                                            }