下载

java 示例代码


package com.cnlive.open.sdk;

import java.io.IOException;

import java.util.HashMap;
import java.util.Map;

import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpUriRequest;
import org.apache.http.client.methods.RequestBuilder;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;

public class Example {

    public static void main(String[] args) {
        //appId,appKey 到http://open.cnlive.com 后台获取。 
        String appId = "appId";
        String appKey = "appKey";
        Map<String,String> map = new HashMap<>();
        map.put("appId", appId);

        //添加业务参数
        map.put("param1", "");
        map.put("param2", "");
        map.put("param3", "");

        String api = "http://api.cnlive.com/open/api2/...";


        //生成 get 请求方法的url
        String url_get = OpenUtil.buildURL(api, map, appKey);
        System.out.println(url_get);

        //post 方式调用 
        String sign = OpenUtil.sign(map, appKey);
        System.out.println(sign);
        map.put("sign", sign);

        //使用apache HttpClient 工具调用。 httpclient 4.3.6
        CloseableHttpClient httpClient = HttpClients.createDefault();
        try {
            List<NameValuePair> params = new ArrayList<NameValuePair>();
            for (String k : map.keySet()) {
                params.add(new BasicNameValuePair(k,map.get(k)));
            }

            HttpUriRequest httpUriRequest = RequestBuilder.post()
                    .setUri(url)
                    .setEntity(new UrlEncodedFormEntity(params,"UTF-8"))
                    .build();
            CloseableHttpResponse rep = httpClient.execute(httpUriRequest);
            try {
                //输出,或转化为java bean对象
                System.out.println(EntityUtils.toString(rep.getEntity()));
            } catch (Exception e) {
                e.printStackTrace();
            } finally {
                rep.close();
            }
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } finally {
            try {
                httpClient.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}