文档
测试

3.接收小票图片

POST
http://auditopenapitest.escase.cn/api/order/submit

接口描述

此接口为下单接口,参数提交后,此接口进行签名校验和消息体解密操作,同时做单号唯一性判断,如果有任一不正确则直接响应不成功的结果,具体不成功的原因参考响应参数中的【Message】节点;当所有的验证通过后接口会响应成功的结果,代表下单成功,后续订单的审核结果需要先等【通知小票图片审核结果】接口通知,下单放在接受到通知后调取【查询小票图片信息】接口,获取审核结果;

请求参数

参数名
类型
描述
必填
Appid
long
公共参数-接入方APPID,由接口提供方提供,示例:10060
必填
Timestamp
long
公共参数-时间戳(10位,示例:1596624142)
必填
Sign
string
公共参数-签名
必填
Message
string
公共参数-消息体(请求参数的集合,除公共参数外所有请求参数都必须放在这个参数中传递)--AES256加密以后Base64
必填

响应参数

参数名
类型
描述
必填
Code
int
返回码:0 为成功,其他为失败
必填
Message
string
返回码描述
必填
Timestamp
long
时间戳(10位)
必填
Sign
String
签名
必填
Result
string
消息体,结果集消息体,数据是经过aes加密后转base64的,加密方式请参考消息体加密文档
必填

消息体(Message包体内容)

参数名
类型
描述
必填
OrderNo
string
订单编号,同一个活动编号需要全局唯一,限制50字以内,示例:YH202008031619368801f6e3
必填
NotifyUrl
string
通知URL,用于审核结果的通知推送,限制200字以内
必填
ImgUrls
IList<Img>
图片集合,见下方Img定义
必填

Img(图片对象)

参数名
类型
描述
必填
Url
string
图片路径,限制200字以内,要求是可以外网访问的完整地址(建议是CDN地址)
必填
Name
string
图片名称,限制50字以内
必填

说明 / 示例,代码基于NETCore 3.1实现

此接口无须解析返回对象中【Result】节点,直接判断【Code】是否等于0,等于0则下单成功, 不等于0,则下单失败,失败原因从【Message】节点解析; ``` /// <summary> /// 接入方APPID /// </summary> private readonly long appid = 10060; /// <summary> /// aes加密密钥 /// </summary> private readonly string aesKey = "8NVQyUjnJWW3FScWQlTKs3ytKv6Elt8P"; /// <summary> /// 接口地址 /// </summary> private readonly string apiUrl = "http://auditopenapitest.escase.cn/api/order/"; /// <summary> /// 注入http请求 /// </summary> private readonly IHttpClientFactory httpClientFactory; /// <summary> /// 日志 /// </summary> private readonly ILogger<OrderController> _logger; #region 下单请求 /// <summary> /// 下单请求 /// </summary> /// <returns></returns> [HttpGet("SubmitOrder")] public async Task<OrderResonse> SubmitOrder() { _logger.LogInformation("下单"); string requestUrl = apiUrl + "submit"; OrderResonse orderResonse; string orderNo = DateTime.Now.ToString("yyyyMMddHHmmssfff"); //生成单号 OrderInputDto orderInputDto = new OrderInputDto { OrderNo = orderNo, NotifyUrl = "http://localhost:33692/order/PushStatus", //订单状态通知地址 ImgUrls = new List<Img> { new Img { Name = "七夕 情人节 埃菲尔铁塔模型 咖啡 爱心 红色玫瑰 花瓣 图片",Url = "http://pic.netbian.com/uploads/allimg/160827/225105-1472309465a527.jpg" }, new Img { Name = "2017中国·遵义国际辣椒博览会-新华网", Url = "https://tse4-mm.cn.bing.net/th/id/OIP.YHC86ivjAKCTdBKz94nrnQHaDo?w=348&h=171&c=7&o=5&pid=1.7" } } }; OrderRequest orderRequest = new OrderRequest { Appid = appid, Message = AesHelper.Encrypt(orderInputDto.ToJsonString(), aesKey).ToUrlEncode() }; orderRequest.Sign = SignRequest(orderRequest, aesKey); var result = await PostAsync(requestUrl, orderRequest); orderResonse = result.FromJsonString<OrderResonse>(); var mysign = SignRequest(orderResonse, aesKey); var checkSign = mysign.Equals(orderResonse.Sign); if (!checkSign) { orderResonse.Message = "签名错误"; } return orderResonse; } #endregion ```