supplier-api.saleyee.cn Open in urlscan Pro
114.215.186.9  Public Scan

URL: https://supplier-api.saleyee.cn/
Submission: On December 26 via api from US — Scanned from US

Form analysis 0 forms found in the DOM

Text Content

Sorry, we need js to run correctly!
【赛盈-供应商端】开发者文档

 * 开发指南
 * 商品中心
   * 查询兼容属性模板POST
   * 查询默认模板属性POST
 * 库存中心
 * 订单中心
 * 渠道中心
 * 财务中心

Powered by Apifox



开发指南


一、文档说明#

赛盈平台为第三方(供应商)提供的数据交互接口。


二、技术说明#

采用基于Web API的接口服务,URL表示操作的资源。交互的数据采用 JSON 格式。通过Token识别用户身份,通过DES加密方式验证请求。


三、请求地址#

系统模块URL商品中心https://gsp-goods-bscapi.saleyee.cn/api/Service/CommonService库存中心https://bsc-stock-api.saleyee.cn/api/Service/CommonService订单中心https://bsc-order-api.saleyee.cn/api/Service/CommonService渠道中心https://bsc-channel-api.saleyee.cn/api/Service/CommonService财务中心https://bsc-finance-api.saleyee.cn/api/Service/CommonService


四、公共参数#


请求参数#

名称类型说明VersionString版本号(当前版本为:1.0.0.1)ExternalUserKeyString授权用户的访问凭证keyExternalUserTokenString授权用户的访问凭证tokenSignStringDES加密后的签名字符串RequestIdString请求唯一标识(可使用GUID)RequestTimeString请求发起时间MessageString业务数据(JSON字符串)MessageTypeString调用的接口名称


响应参数#

名称类型说明VersionString版本号RequestIdString请求唯一标识RequestTimeString请求发起时间ResponseIdString响应唯一标识ResponseTimeString响应时间RequestMessageString请求发送的数据ResultInt响应结果(0失败,1成功)ErrorObject错误信息-
CodeString错误编码- ShortMessageString简略错误消息-
LongMessageString详细错误消息MessageString响应数据(JSON字符串)


五、业务参数#

API 调用除了必须包含公共参数外,如果本身有业务级的参数也必须将其赋值给公共请求参数的 Message 字段,各 API 的业务级参数请参考各接口详细信息。


六、签名算法#

为了防止 API 调用过程中被恶意篡改,调用任何一个 API
都需要携带请求签名,服务端会根据请求参数,对签名进行验证,签名不合法的请求将会被拒绝。目前使用的签名算法为:DES(模式:CBC、填充:pkcs7padding),签名过程如下:

📌



1、将公共参数封装为对象(含Sign字段,默认值为null)
2、将业务参数转换为json类型,赋值给公共参数的Message字段
3、将公共参数对象序列化为json字符串,使用DES进行加密,得到签名字符串
4、将签名字符串赋值给公共参数对象Sign字段后,即可发起http请求




七、签名示例(.NET)#

public static string SignDemo(string data)
{
    byte[] byKey = "********";
    byte[] byIV = "********";
    using (DESCryptoServiceProvider cryptoProvider = new DESCryptoServiceProvider())
    using (MemoryStream ms = new MemoryStream())
    using (CryptoStream cst = new CryptoStream(ms, cryptoProvider.CreateEncryptor(byKey, byIV), CryptoStreamMode.Write))
    using (StreamWriter sw = new StreamWriter(cst))
    {
        sw.Write(data);
        sw.Flush();
        cst.FlushFinalBlock();
        sw.Flush();
        byKey = byIV = null;
        return Convert.ToBase64String(ms.GetBuffer(),0,(int)ms.Length);
    }
}


八、请求示例(.NET)#

public static string RequestDemo(string data)
{
    // 公共参数
    string url = "http://localhost:8906/zh-CN/api/Service/CommonService";
    ExtServiceRequest request = new ExtServiceRequest();
    request.RequestId = Guid.NewGuid().ToString();
    request.RequestTime = DateTimeHelper.GetNowDateTime();
    request.Version = "1.0.0.1";
    request.AppToken = "o5Nf65FiKgoQu1df1jI1syOmVZQJyCPn";
    // 业务参数
    SupplierQueryCompatibleTemplateRequest inRequest = new SupplierQueryCompatibleTemplateRequest();
    inRequest.StartTrDateTime = DateTimeHelper.GetNowDateTime().AddYears(-1);
    inRequest.EndTrDateTime = DateTimeHelper.GetNowDateTime();
    string inRequestJson = SerializableConvert.SerializeObject(inRequest);
    request.Message = inRequestJson;
    // 接口名称
    request.MessageType = "SupplierQueryCompatibleTemplate";
    // 签名
    string json = SerializableConvert.SerializeObject(request);
    string data = EncryHelper.GetEncodeString(json);
    request.Sign = data;
    // 发起请求
    HttpClient client = new HttpClient();
    HttpResponseMessage responseMessage = client.PostAsJsonAsync(url, request).Result;
    string responseContent = responseMessage.Content.ReadAsStringAsync().Result;
    // 解析响应数据
    ExtServiceResponse response = SerializableConvert.DeserializeObject<ExtServiceResponse>(responseContent);
    ExtCategoryResponse extResponse = SerializableConvert.DeserializeObject<ExtCategoryResponse>(response.Message);
}

最后修改时间: 9 小时前

克隆导出

我的 Apifox
一、文档说明
二、技术说明
三、请求地址
四、公共参数
请求参数
响应参数
五、业务参数
六、签名算法
七、签名示例(.net)
八、请求示例(.net)