鉴权说明

验证步骤

  1. 从请求header中获得参与验签字段channel、sign;

  2. 根据验签规则将得到的签名内容做鉴权,验证成功返回请求接口,或鉴权失败直接返回错误信息

请求样例

请求采用key-value模式。

header 需包含:

1、channel: 渠道标识,由红旗智行给定

2、sign:参与验签秘钥,由红旗智行给定

GET方式:

1、curl方式

curl -X GET "http://test-openapi-channel.hqzhuanche.com/v2/open/channel/config/XXX" 
-H "accept:application/json;charset=utf-8"
-H "Content-Type:application/json" 
-H "channel:partner-XXX" -H "sign:PsXXXXXXXXsat"

2、Java代码

    /**
     *  HttpClient的GET请求
     */
    public static void sendGet() throws Exception {

        /**请求路径**/
        String url = "http://test-openapi-channel.hqzhuanche.com/v2/XXX";
        /**签名秘钥**/
        String channel = "partner-XXX";
        String sign = "XXX";

        /**创建GET请求**/
        HttpGet httpGet = new HttpGet(url);
        /**设置header的请求格式*/
        httpGet.addHeader("Accept", "application/json; charset=utf-8");
        httpGet.setHeader("Content-type", "application/json");
        /**添加header的签名信息*/
        httpGet.addHeader("sign", sign);
        httpGet.addHeader("channel", channel);

        /**执行请求*/
        CloseableHttpResponse response = HttpClients.createDefault().execute(httpGet);

        /**打印执行结果**/
        String resultString = EntityUtils.toString(response.getEntity(), "UTF-8");
        System.out.println("httpGet_result:"+resultString);

    }

POST方式:

1、curl方式

curl -X POST "http://test-openapi-channel.hqzhuanche.com/v2/open/channel/order/XXX" 
-H "accept:application/json;charset=utf-8"
-H "Content-Type:application/json"  
-H "channel:partner-XXX" -H "sign:PsXXXXXXXXsat" 
-d "orderNo=XX" -d "partnerOrderNo=XXX" -d "reason=XXX"

2、Java代码

   /**
     * HttpClient的POST请求
     */
    public static void sendPost() throws Exception {

        /**请求路径**/
        String url = "http://test-openapi-channel.hqzhuanche.com/v2/XXX";
        /**签名秘钥**/
        String channel = "partner-XXX";
        String sign = "XXX";
        /**请求入参JSON**/
        String jsonString = "{\"orderNo\":\"XXX\"}";

        /**创建GET请求**/
        HttpPost httpPost = new HttpPost(url);
        /**设置header的请求格式*/
        httpPost.addHeader("Accept", "application/json; charset=utf-8");
        httpPost.setHeader("Content-type", "application/json");
        /**添加header的签名信息*/
        httpPost.addHeader("sign", sign);
        httpPost.addHeader("channel", channel);
        /**设置请求入参**/
        httpPost.setEntity(new StringEntity(jsonString, ContentType.APPLICATION_JSON));

        /**执行请求*/
        CloseableHttpResponse response = HttpClients.createDefault().execute(httpPost);

        /**打印执行结果**/
        String resultString = EntityUtils.toString(response.getEntity(), "UTF-8");
        System.out.println("httpPost_result:"+resultString);

    }

注意事项

  1. 需要签名的字段与请求串中字段先后顺序没有关系,只与进行签名的内容有关。
  2. 参与验签参数值内容是红旗智行颁发给合作方的唯一字符串,双方保密内容,不在非请求中传输,严禁公开。
Copyright © 红旗智行科技(北京)有限公司 2018 all right reserved,powered by Gitbook该文件修订时间: 2021-06-29 17:11:57

results matching ""

    No results matching ""