#接入美团联盟,使用美团联通提供的demo代码。跳转连接和商品列表接口能够正常调用。但是订单列表总是返回空列表,后台能够看到订单。并且订单推送也没有被调用。

private Response postJsonString(String path, String body, Map<String, String> customersHeaders) throws Exception {
Map<String, String> headers = new HashMap<String, String>();
// (必填)根据期望的Response内容类型设置
headers.put(HttpHeader.HTTP_HEADER_ACCEPT, "application/json");
// (可选)Body MD5,服务端会校验Body内容是否被篡改
headers.put(HttpHeader.HTTP_HEADER_CONTENT_MD5, MessageDigestUtil.base64AndMD5(body));
// (POST请求必选)请求Body内容格式
headers.put(HttpHeader.HTTP_HEADER_CONTENT_TYPE, ContentType.CONTENT_TYPE_JSON);
headers.put("Media-Request-Id", ""+System.currentTimeMillis());
// 其他接口协议定义的请求头
// 自定义参与签名Header前缀(可选,默认只有"S-Ca-"开头的参与到Header签名)
List<String> customHeadersToSignPrefix = new ArrayList<String>();
// 必须放入的签名认证请求头S-Ca-App和S-Ca-Timestamp,则需要放入"S-Ca-Signature-Headers"请求头中!!!,必须放入
customHeadersToSignPrefix.add("S-Ca-App");
customHeadersToSignPrefix.add("S-Ca-Timestamp");
// 其他接口协议定义的验签请求头,具体参见接口;或者媒体自己增加的验签请求头,保证数据安全,对应在headers里面必须有值
customHeadersToSignPrefix.add("Cps-Request-Id");
// 如果需要加入签名认证,则需要放入"S-Ca-Signature-Headers"请求头中
if (MapUtils.isNotEmpty(customersHeaders)) {
headers.putAll(customersHeaders);
// 如果需要加入签名认证,则需要放入"S-Ca-Signature-Headers"请求头中
customHeadersToSignPrefix.addAll(customersHeaders.keySet());
}
Request request = new Request(Method.POST_STRING, HttpSchema.HTTPS + HOST, path, appKey, appSecret,
Constants.DEFAULT_TIMEOUT);
request.setHeaders(headers);
request.setSignHeaderPrefixList(customHeadersToSignPrefix);
// 请求的body
System.out.println(body);
request.setStringBody(body);
// 调用服务端
return Client.execute(request);
}
运行结果
{"endTime":1751122716,"limit":100,"page":1,"queryTimeType":1,"searchType":2,"startTime":1748413760}
{"code":0,"data":{"dataList":[],"scrollId":"","skuCount":0},"message":"成功","success":true}