package main func main() { //apiName := "OMS_EXPRESS_ORDER_CREATE" //content := "{\"orderNo\":\"8885452262\",\"orderSource\":\"****\",\"billType\":\"00\",\"orderType\":\"01\",\"sender\":{\"name\":\"测试名称\",\"tel\":\"0558-45778586\",\"mobile\":\"18775487548\",\"postCode\":\"100001\",\"country\":\"中国\",\"province\":\"安徽\",\"city\":\"合肥\",\"area\":\"泸州\",\"town\":\"测试镇\",\"address\":\"XX街道XX小区XX楼888\"},\"receiver\":{\"name\":\"测试名称\",\"tel\":\"0556-45778586\",\"mobile\":\"15575487548\",\"postCode\":\"100001\",\"country\":\"中国\",\"province\":\"河北\",\"city\":\"湖州\",\"area\":\"江汉\",\"town\":\"收件镇\",\"address\":\"XX街道XX小区XX楼666\",\"safeNo\":\"13466666632-0011\"},\"cargo\":{\"battery\":\"10\",\"goodsType\":\"大件\",\"goodsName\":\"XX物\",\"goodsCount\":10,\"spaceX\":10,\"spaceY\":10,\"spaceZ\":10,\"weight\":10,\"goodsAmount\":\"100\",\"cargoItemList\":[{\"serialNumber\":\"8451234\",\"referenceNumber\":\"88838783634\",\"productId\":\"001\",\"name\":\"小商品\",\"qty\":10,\"unitPrice\":1,\"amount\":10,\"currency\":\"美元\",\"weight\":10,\"remark\":\"无\"}]},\"customer\":{\"siteCode\":\"666666\",\"customerName\":\"666666000001\",\"sitePwd\":\"***\",\"monthCustomerCode\":\"9000000\"},\"internationalAnnex\":{\"internationalProductType\":\"01\",\"customsDeclaration\":false,\"senderCountry\":\"中国\",\"receiverCountry\":\"俄罗斯\"},\"waybillNo\":\"59635456632\",\"assignAnnex\":{\"takeCompanyCode\":\"862456565466\",\"takeUserCode\":\"9000000007\"},\"codValue\":\"2000\",\"freightCollectValue\":\"20\",\"timelessType\":\"01\",\"productType\":\"01\",\"serviceTypeList\":[\"***\"],\"extendFieldMap\":{\"mapValue\":\"***\"},\"remark\":\"无备注\",\"expressDirection\":\"01\",\"createChannel\":\"01\",\"regionType\":\"01\",\"insuredAnnex\":{\"insuredValue\":\"6.66\",\"goodsValue\":\"6.66\"},\"expectValue\":\"10\",\"payModel\":\"1\"}" //stock, err := billCodeQueryUserStock(apiName, content) //if err != nil { // println(err.Error()) // return //} //fmt.Println(string(stock)) } // 构建请求数据 //func getStoHeader(apiName string, content string) map[string]string { // secretKey := "2kLMr75pURbVh3FnWzY6SCr7SM6qsoO3" // dataDigest := getStoSignature(content, secretKey) // var param = map[string]string{ // "api_name": apiName, // "content": content, // "from_appkey": "CAKgwDceADOybmU", // "from_code": "CAKgwDceADOybmU", // "to_appkey": "sto_oms", // "to_code": "sto_oms", // "data_digest": dataDigest, // } // return param //} // //func requestSto(apiName string, content string) ([]byte, error) { // var url = "http://cloudinter-linkgatewaytest.sto.cn/gateway/link.do" // //url = "https://cloudinter-linkgateway.sto.cn/gateway/link.do" // // // 获取请求参数 // params := getStoHeader(apiName, content) // // // 创建 multipart form-data 请求体 // body := &bytes.Buffer{} // writer := multipart.NewWriter(body) // // // 添加所有参数到 form-data // for key, value := range params { // err := writer.WriteField(key, value) // if err != nil { // return nil, err // } // } // // // 关闭 writer 以完成 multipart 数据 // err := writer.Close() // if err != nil { // return nil, err // } // // // 创建 HTTP 请求 // req, err := http.NewRequest("POST", url, body) // if err != nil { // return nil, err // } // // // 设置 Content-Type 头,包含 boundary // req.Header.Set("Content-Type", writer.FormDataContentType()) // // // 发送请求 // client := &http.Client{} // resp, err := client.Do(req) // if err != nil { // return nil, err // } // defer resp.Body.Close() // // // 读取响应 // responseBody, err := io.ReadAll(resp.Body) // if err != nil { // return nil, err // } // // return responseBody, nil //} // //// 生成签名 //func getStoSignature(content, secretKey string) string { // text := content + secretKey // hash := md5.Sum([]byte(text)) // return base64.StdEncoding.EncodeToString(hash[:]) //}