借助第三方,java长链接转短链接,IP域名同样支持

短信和微博中用到短链接短链接的主要职责就是把原始链接很长的地址压缩成短链接地址,当点击这个链接后,又可以跳转到原始链接地址。

package 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.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;

/**
 * TODO(工具类:借助第三方,将长连接转换为短连接)
 * 

* */ public class ShortUrlUtil { public static DefaultHttpClient httpclient; static { httpclient = new DefaultHttpClient(); } /** * 生成短连接信息 */ public static String generateShortUrl(String url) { try { HttpPost httpost = new HttpPost("http://suo.im/api.php"); List params = new ArrayList(); params.add(new BasicNameValuePair("format", "utf-8")); // 编码 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"); return jsonStr; } catch (Exception e) { e.printStackTrace(); return "Error"; } } /** * 测试生成短连接 */ public static void main(String[] args) { String url = generateShortUrl("http://192.168.1.88:8080/admin/login.html"); System.out.println(url); } }


利用第三方接口生成短链接

缩短网址http://suo.im/ 除了提供在线生成外,还提供了API接口调用。




你可能感兴趣的:(借助第三方,java长链接转短链接,IP域名同样支持)