淘寶api sdk golang
淘寶開(kāi)放平臺(tái)的go版的SDK. 內(nèi)置sdk生成工具.
可由淘寶提供的ApiMetadata.xml,自動(dòng)生成sdk. 主要有兩種生成方式:
分結(jié)構(gòu)生成
-
一鍵生成所有
示例代碼:
package main
import (
"github.com/ohohco/taobao/autosdk"
"log"
"os"
"path"
)
var (
//生成文件所在路徑.
root = "github.com/ohohco/taobao/api"
//ApiMetadata.xml文件
filename = "./ApiMetadata.xml"
//api文檔的調(diào)用方法
apiMethod = "taobao.item.get"
//生成文件所在路徑(絕對(duì)路徑).
dest = path.Join(os.Getenv("GOPATH"), "src/github.com/ohohco/taobao/api")
)
func main() {
log.SetFlags(log.Lshortfile | log.LstdFlags)
//文件讀取
var metadata *autosdk.Metadata
metadata, err := metadata.UnmarshalFile(filename)
if err != nil {
panic(err)
}
//文件生成
///////////////
////方式1//////
///////////////
if err = metadata.GenerateByApiMethod(apiMethod, dest); err != nil {
panic(err)
}
///////////////
////其他方式///
///////////////
if err = metadata.Generate(dest); err != nil {
panic(err)
}
//代碼格式化:
if err = autosdk.Format(dest); err != nil {
panic(err)
}
//代碼install:
if err = autosdk.Install(path.Join(root, "domain"),
path.Join(root, "request"),
path.Join(root, "response")); err != nil {
panic(err)
}
}
///////////////
////方式2//////
///////////////
if err = metadata.Generate(dest); err != nil {
panic(err)
}評(píng)論
圖片
表情
