使用短网址服务--百度的短网址API
来源:互联网 发布:淘宝二手电脑回收 编辑:程序博客网 时间:2024/04/26 08:31
直接贴代码吧,依赖包有apache的httpclient,可以在apache.org下http components下下载(这个包需要apache的commons logging的包才能运行,囧!)
package net.test.aaron;import java.io.IOException;import java.io.InputStream;import java.util.ArrayList;import java.util.List;import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.NameValuePair;import org.apache.http.client.ClientProtocolException;import org.apache.http.client.HttpClient;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;public class ShortUrlTest {/** * @param args * @throws IOException * @throws ClientProtocolException */public static void main(String[] args) throws ClientProtocolException, IOException {List<NameValuePair> formparams = new ArrayList<NameValuePair>();formparams.add(new BasicNameValuePair("url", "http://www.udrop.net/s/0/4/4/1S1lCnwx17AP17KPC6-M1S16yA==?m=1367116329454"));UrlEncodedFormEntity reqentity = new UrlEncodedFormEntity(formparams, "UTF-8");HttpPost httppost = new HttpPost("http://dwz.cn/create.php?url=");HttpClient httpclient = new DefaultHttpClient();httppost.setEntity(reqentity);HttpResponse response = httpclient.execute(httppost);HttpEntity respentity = response.getEntity();if (respentity != null) { /*if (len != -1 && len < 2048) { System.out.println(EntityUtils.toString(entity)); } else { // Stream content out }*/InputStream instream = null; try { // do something useful //instream = entity.getContent(); System.out.println(EntityUtils.toString(respentity, "UTF-8")); //long len = entity.getContentLength(); } finally { //instream.close(); }}}}
有个问题,我在测试环境下,host是一个内网IP加上一个端口号,会提示这个URL不安全,返回错误!