更新说明 | |||
日期 | 改动内容 | 说明 | 作者 |
2016-06-02 | 新增 | 增加 | 忘尘 |
注:所有接口签名格式为统一格式
签名格式为各个非空参数按照ascii码排序,排序后将各个参数值base64编码,然后按照key1base64(value1)key2base64(value2)…拼接,最后加上您设置的加密字符串md5加密即可;参数值除了sign外,都需要经过base64转码,转码后的值经过UrlEncode后在进行传递。
C#代码如:
Dictionary<string, string> SearchDic = new Dictionary<string, string>();
SearchDic.Add("UserName", UserName);
SearchDic.Add("OrderId", OrderId);
var list = SearchDic.OrderBy(s => BitConverter.ToString(Encoding.ASCII.GetBytes(s.Key))); //将字典中的对象按ascii码排序
MD5CryptoServiceProvider MD5t = new MD5CryptoServiceProvider();
string md5Source = "";
//循环拼接字符串
foreach (var item in list)
{
if (!string.IsNullOrEmpty(item.Value))
{
md5Source += item.Key + Convert.ToBase64String(Encoding.UTF8.GetBytes(item.Value));
}
}
md5Source += “您设置的加密字符串”;
string md5Code = BitConverter.ToString(MD5t.ComputeHash(Encoding.UTF8.GetBytes(md5Source))).Replace("-", "");
本协议基于HTTP,使用POST提交方式
1、获取DD373游戏
描述 | 取得DD373游戏 |
返回值 | Xml(可以访问链接具体查看格式) |
请求地址 | http://sdk.dd373.com/Dq/GetMallGameList |
2、获取DD373游戏区
描述 | 通过游戏ID取得DD373对应游戏区 | ||
参数 | game | 游戏ID | 必须 |
返回值 | Xml(可以访问链接具体查看格式) | ||
请求地址 | http://sdk.dd373.com/Dq/GetMallGameAreaList?game=7a091ddf-a7d4-4632-b292-10b7fe8e02b0 |
3、取得 DD373游戏区对应的服务器
描述 | 通过区ID取得 DD373对应游戏服务器 | ||
参数 | area | 区ID | 必须 |
返回值 | Xml(可以访问链接具体查看格式) | ||
请求地址 | http://sdk.dd373.com/Dq/GetMallGameServerList?area=2b0d0d5f-12e5-4603-a344-21844c69f66e |
4、查询游戏下商品分类
描述 | 通过游戏ID 查询当前游戏下的所有商品分类 | ||
参数 | game | 游戏ID | 必须 |
返回值 | Xml(可以访问链接具体查看格式) | ||
请求地址 | http://sdk.dd373.com/Dq/GetMallGameGoodsList?game=7a091ddf-a7d4-4632-b292-10b7fe8e02b0 |
5、查询订单取消原因(提交订单状态为失败时,必须传入相应的失败原因ID)
描 述 | 查询订单取消原因 |
返回值 | Xml(可以访问链接具体查看格式) |
请求地址 | http://sdk.dd373.com/Dq/GetOrderFailedReasonList |
6、更新商城商品
描述 | 更新商城商品 | ||
UserName | DD用户名 | 必须 | |
GameCategory | DD游戏服务器ID | 必须 | |
ShopType | DD游戏商品分类ID | 非必须 | |
TotalNo | 商城游戏币库存总数量 | 必须 | |
SinglePrice | 商城游戏币单价(单位:2.46914元/游戏币) | 必须 | |
Enalbed | 是否可用(1:可用 0:不可用) | 必须 | |
sign | 签名字符串 | 必须 | |
返回值 | Json格式,格式如:{"result":"true","message":"更新成功"} | ||
请求地址 | http://sdk.dd373.com/Dq/MemberMallShopUpdate |
7、订单推送接口
描述 | 商户接收订单接口 | ||
参数 | PartnerId | 会员用户名 | |
OrderId | 订单编号 | ||
GameName | 游戏名称 | ||
AreaName | 区名称 | ||
ServerName | 服务器名称 | ||
AuctionPrice | 单件价格 | ||
BuyAmount | 购买件数 | ||
BuyerMemo | 购买备注(这里是买家购买填写的表单信息) | ||
BuyerPhoneNo | 买家联系电话 | ||
BuyerQQ | 买家qq | ||
GamePerQuantity | 单件游戏币数量 | ||
ItemType | 商品分类 | ||
NumUnit | 游戏币单位 | ||
SinglePrice | 游戏币单价(元/游戏币) | ||
TotalPrice | 订单总价 | ||
RoleName | 收获角色名 | ||
TradeType | 交易方式(目前默认担保) | ||
OrderStatus | 订单状态 | ||
OrderTime | 订单创建时间 | ||
Sqq | 客服qq | ||
sign | 签名 | ||
返回值 | Json格式,格式如:{"result":"true","message":"推送成功"} 注意:服务器只有在接收到true时才会停止继续推送,接收注意判断订单是否重复,重复返回 true |
8、提交订单状态
描述 | 提交订单状态 | ||
参数 | UserName | DD用户名 | 必须 |
OrderId | 订单编号 | 必须 | |
OrderState | 订单状态 | 必须 | |
ReasonId | 取消原因ID | 非必须 | |
Remark | 备注 | 非必须 | |
sign | 签名 | 必须 | |
返回值 | Json格式,格式如:{"result":"true","message":"提交成功"} | ||
请求地址 | http://sdk.dd373.com/Dq/MemberMallOrder | ||
注意:订单状态只能为:交易取消或交易成功,当提交交易取消时必须传入取消原因ID |
9、查询订单状态
描述 | 提交订单状态 | ||
参数 | UserName | DD用户名 | 必须 |
OrderId | 订单编号 | 必须 | |
sign | 签名 | 必须 | |
返回值 | Json格式,格式如:{"result":"true","message":"支付成功"} | ||
请求地址 | http://sdk.dd373.com/Dq/MemberMallOrderStatus |