dwz.cnインタフェースjavaクライアント実装
プロジェクトでは短いURLが必要で、dwz.cnを使用しています.
JAvaクライアントツールクラスは次のように実現されます.
必要なjarパッケージ、Maven構成
ソースコード
JAvaクライアントツールクラスは次のように実現されます.
必要なjarパッケージ、Maven構成
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.6</version>
</dependency>
<dependency>
<groupId>org.apache.httpcomponents</groupId>
<artifactId>httpclient</artifactId>
<version>4.3.6</version>
</dependency>
ソースコード
package com.kuanrf.common.util;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.config.CookieSpecs;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
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;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
/**
*
*
* @author lujun.chen
* @version [ , 2015 10 10 ]
* @see [ / ]
* @since [ / ]
*/
public class GenerateShortUrlUtil {
public static CloseableHttpClient httpclient;
static {
RequestConfig config = RequestConfig.custom()
.setCookieSpec(CookieSpecs.IGNORE_COOKIES).build();
httpclient = HttpClients.custom().setDefaultRequestConfig(config)
.build();
}
/**
*
*
* @author: Jerri
* @date: 2014 3 22 5:31:15
*/
public static String generateShortUrl(String url) {
try {
HttpPost httpost = new HttpPost("http://www.dwz.cn/create.php");
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("url", url));
httpost.setEntity(new UrlEncodedFormEntity(params, "utf-8"));
HttpResponse response = httpclient.execute(httpost);
String jsonStr = EntityUtils
.toString(response.getEntity(), "utf-8");
JSONObject object = JSON.parseObject(jsonStr);
return object.getString("tinyurl");
} catch (Exception e) {
e.printStackTrace();
return "Error";
}
}
}