Documentation ¶
Overview ¶
Package metadata 下载淘宝API文档metadata, 生成Golang SDK
Index ¶
- Constants
- Variables
- func AlignTplParams(params []TplParam)
- func DocLink(docID int64) string
- func DocURL(docID int64, tbToken string) string
- type ApiCatelog
- type ApiCatelogData
- type ApiCatelogResponse
- type ApiCatelogTree
- type ApiDoc
- type ApiDocResponse
- type ApiParam
- type ApiParamType
- type ApiTpl
- type ApiTreeCategory
- type PkgConfig
- type PkgConfigSlice
- type TplModel
- type TplParam
Constants ¶
View Source
const ( // DOC_CENTER_URL 档中心链接,用于获取_tb_token_ cookie DOC_CENTER_URL = "https://open.taobao.com/docCenter" // API_CATELOG_URL 文档类目地址 API_CATELOG_URL = "https://open.taobao.com/handler/document/getApiCatelogConfig.json?scopeId=&treeId=&docId=285&docType=2&tag=&_tb_token_=" )
Variables ¶
View Source
var ConflictModels []string
ConflictModels conflict_models 命名冲突struct
View Source
var PkgsConfig []PkgConfig
PkgsConfig SDK各分包配置
Functions ¶
func AlignTplParams ¶ added in v1.2.2
func AlignTplParams(params []TplParam)
Types ¶
type ApiCatelog ¶
type ApiCatelog struct { Name string `json:"name,omitempty"` // API 方法名 Tips string `json:"tips,omitempty"` // tips SubName string `json:"subName,omitempty"` // subname Id int64 `json:"id,omitempty"` // API ID DocId int64 `json:"docId,omitempty"` // API 文档ID DocType int `json:"docType,omitempty"` // API 文档类型 }
ApiCatelog 淘宝API文档单API结构体
type ApiCatelogData ¶
type ApiCatelogData struct { TreeCategories []ApiTreeCategory `json:"treeCategories,omitempty"` // 类目树列表 Name string `json:"name,omitempty"` // 名称 Id int64 `json:"id,omitempty"` // ID }
ApiCatelogData 淘宝API文档类目结果结构体
type ApiCatelogResponse ¶
type ApiCatelogResponse struct { Data ApiCatelogData `json:"data,omitempty"` // 返回成功数据 Code string `json:"code,omitempty"` // 错误代码 ErrMsg string `json:"errMsg,omitempty"` // 错误信息 Success bool `json:"success,omitempty"` // 是否成功 }
ApiCatelogResponse 载淘宝API文档类目返回结果结构体
func (ApiCatelogResponse) Error ¶
func (res ApiCatelogResponse) Error() string
Error implement Error interface
type ApiCatelogTree ¶
type ApiCatelogTree struct { CatelogList []ApiCatelog `json:"catelogList,omitempty"` // API列表 Name string `json:"name,omitempty"` // 类目名 Id int64 `json:"id,omitempty"` // 类目ID }
ApiCatelogTree 淘宝API文档单类目结构体
type ApiDoc ¶
type ApiDoc struct { RequestParams []ApiParam `json:"requestParams,omitempty"` // 请求参数 ResponseParams []ApiParam `json:"responseParams,omitempty"` // 返回参数 Name string `json:"name,omitempty"` // API 方法名 ChineseName string `json:"apiChineseName,omitempty"` // API 中文名 Description string `json:"description,omitempty"` // API 描述 Id int64 `json:"id,omitempty"` // API ID }
ApiDoc 淘宝API文档结构体
type ApiDocResponse ¶
type ApiDocResponse struct { Data ApiDoc `json:"data,omitempty"` // 成功数据 Code string `json:"code,omitempty"` // 错误代码 ErrMsg string `json:"errMsg,omitempty"` // 错误信息 Success bool `json:"success,omitempty"` // 是否成功 }
ApiDocResponse 下载淘宝API文档返回结果
func (ApiDocResponse) Error ¶
func (res ApiDocResponse) Error() string
Error implement Error interface
type ApiParam ¶
type ApiParam struct { SubParams []ApiParam `json:"subParams,omitempty"` // 对象包含参数 Name string `json:"name,omitempty"` // 参数名 Type ApiParamType `json:"type,omitempty"` // 参数类型 Description string `json:"description,omitempty"` // 描述 MaxLength json.Number `json:"maxLength,omitempty"` // 最大长度 MaxListSize json.Number `json:"maxListSize,omitempty"` // 列表最大数量 MaxValue json.Number `json:"maxValue,omitempty"` // 最大值 MinValue json.Number `json:"minValue,omitempty"` // 最小值 Required bool `json:"required,omitempty"` // 是否必须 UsePointer bool `json:"use_pointer,omitempty"` // 生成SDK是否使用指针 }
ApiParam is 淘宝API文档字段结构体
type ApiParamType ¶
type ApiParamType = string
ApiParamType 淘宝API文档字段类型
const ( // STRING_PARAM_TYPE 字符串类型 STRING_PARAM_TYPE ApiParamType = "String" // NUMBER_PARAM_TYPE 数值类型 NUMBER_PARAM_TYPE ApiParamType = "Number" // DATE_PARAM_TYPE 日期类型 DATE_PARAM_TYPE ApiParamType = "Date" // FIELD_LIST_PARAM_TYPE 列表类型 FIELD_LIST_PARAM_TYPE ApiParamType = "Field List" // BOOLEAN_PARAM_TYPE 布尔类型 BOOLEAN_PARAM_TYPE ApiParamType = "Boolean" // PRICE_PARAM_TYPE 价格类型 PRICE_PARAM_TYPE ApiParamType = "Price" // BIG_DECIMAL_PARAM_TYPE Decimal类型 BIG_DECIMAL_PARAM_TYPE ApiParamType = "BigDecimal" // BYTE_PARAM_TYPE byte 类型 BYTE_PARAM_TYPE ApiParamType = "byte" // BYTES_PARAM_TYPE bytes 类型 BYTES_PARAM_TYPE ApiParamType = "byte[]" // JSON_PARAM_TYPE json 类型 JSON_PARAM_TYPE ApiParamType = "Json" // RESULT_PARAM_TYPE Result 类型 RESULT_PARAM_TYPE ApiParamType = "Result" // UNKNOWN_PARAM_TYPE 未知类型 UNKNOWN_PARAM_TYPE ApiParamType = "" )
type ApiTpl ¶
type ApiTpl struct { RequestParams []TplParam // 请求参数 ResponseParams []TplParam // 返回参数 Pkg string // 包名 ApiName string // Api方法名 Name string // Api结构体名 ResponseKey string // ***_response SnakeName string // snake 化方法名 ChineseName string // 中文名 Desc string // 描述 IsMultipart bool // 是否使用multipart/form HasRequestId bool // 返回参数中是否已包含RequestId }
ApiTpl SDK API模版结构体
type ApiTreeCategory ¶
type ApiTreeCategory struct { CatelogTrees []ApiCatelogTree `json:"catelogTrees,omitempty"` // 类目列表 Name string `json:"name,omitempty"` // api catelog tree name Id int64 `json:"id,omitempty"` // api catelog tree id }
ApiTreeCategory 淘宝API文档类目树结构体
type PkgConfig ¶
type PkgConfig struct { Name string `json:"name,omitempty"` // api catelog name Pkg string `json:"pkg,omitempty"` // go package name Id int64 `json:"id,omitempty"` // api catelog id }
PkgConfig SDK分包配置结构体
type PkgConfigSlice ¶ added in v1.1.3
type PkgConfigSlice []PkgConfig
PkgConfigSlice SDK分包配置按Id排序
func (PkgConfigSlice) Len ¶ added in v1.1.3
func (p PkgConfigSlice) Len() int
func (PkgConfigSlice) Less ¶ added in v1.1.3
func (p PkgConfigSlice) Less(i, j int) bool
func (PkgConfigSlice) Swap ¶ added in v1.1.3
func (p PkgConfigSlice) Swap(i, j int)
type TplModel ¶
type TplModel struct { Params []TplParam // struct 成员 Pkg string // 包名 Name string // struct 名 ImportModel bool // 是否import github.com/bububa/opentaobao/model }
TplModel SDK model模版结构体
func (TplModel) NeedImportModel ¶ added in v1.2.0
NeedImportModel 判断SDK model模版是否需要引用github.com/bububa/opentaobao/model包
type TplParam ¶
type TplParam struct { Obj []TplParam // 对象类型结构体参数 Name string // 结构体成员名 Label string // 第一个字母小写的 ParamKey string // api 参数的key(json/xml) Type string // 参数类型 ObjType string // 对象类型的对象名 SnakeType string // 对象类型名snake化 Desc string // 描述 IsObject bool // 是否是对象 IsList bool // 是否是数组 IsNumber bool // 是否是说字 IsBool bool // 是否是布尔 Required bool // 是否必须 }
TplParam SDK API模版字段参数结构体
func (TplParam) IsMultipart ¶
IsMultipart 判断SDK API是否需要使用multipart/form post
Click to show internal directories.
Click to hide internal directories.