java 新浪短链接_如何利用新浪官方的短网址API接口实现T.cn短链接的压缩生成

如何利用新浪官方的短网址API接口实现T.cn短链接的压缩生成

发布时间:2020-08-12 14:30:29

来源:ITPUB博客

阅读:73

作者:文远大将军

短网址的实现原理就是有一个数据表会配置文件将短网址和实际网址进行对应,当请求某个短网址时,程序跳转到对应的实际网址上去,从而实现网址的访问。目前国内最稳定最好用的是新浪T.cn短链接。

c7ada35fcd3574f9e7b24096e1cf433b.png

之前新浪提供了长链接转为短链接的API,可以把长链接转为t.cn/xxx这种格式的短链接。但是在前段时间新浪宣布关闭了之前几个流传在外的T.cn短链接的API接口。导致很多朋友都没有办法在使用新浪的T.cn短链!

96cd06b8b3d53c2653b42cc7323decdc.png

今天小编就给大家分享一个仍然可以使用的新浪T.cn短链接的API接口。下面我来把接口以及调用文档跟大家说一下。

接口分享

接口地址:http://www.sinadwz.cn/sina.php?url_long=

http://www.baidu.com

接口说明:把上面的新浪短网址api接口的"

http://www.baidu.com"替换成需要生成的链接即可

接口文档

PHP调用演示:

$url = 'http://www.baidu.com';

$api_url = 'http://www.sinadwz.cn/sina.php?url_long=http://www.baidu.com;

$short_url = file_get_contents($api_url);

echo $short_url;

JAVA调用演示:

public static void main(String path[]) throws Exception {

URL u =new URL("http://www.sinadwz.cn/sina.php?url_long=http://www.baidu.com");

InputStream in = u.openStream();

ByteArrayOutputStream out = new ByteArrayOutputStream();

try {

byte buf[] = new byte[1024];

int read = 0;

while ((read = in .read(buf)) > 0) {

out.write(buf, 0, read);

}

} finally {

if ( in != null) {

in .close();

}

}

byte b[] = out.toByteArray();

System.out.println(new String(b, "utf-8"));

}

Python调用演示:

import urllib, urllib2, sys

host = 'http://www.sinadwz.cn'

path = '/sina.php?'

method = 'GET'

querys = 'url_long=http%3A%2F%2Fwww.baidu.com'

bodys = {}

url = host + path + '?' + querys

request = urllib2.Request(url)

response = urllib2.urlopen(request)

content = response.read()

if (content):

print(content)

常见问题:

1、 我的推广链接转换成短链接的时候为什么参数丢失了?

答:你的推广链接中含有特殊字符,需要使用UTF8编码格式,将链接编码后重新生成!

2、接口没有返回结果,是什么情况?

答:偶尔会有延迟,如果长时间未返回,请检查链接格式是否正确

3、生成的短网址能使用多久?

答:生成的短链接都是永久有效的。

本文出自浪狐短网址:

http://www.sinadwz.cn/56ssew.html

转载请注明出处

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,你可以使用百度网址API生成链接。以下是Java代码示例: ```java import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.HttpURLConnection; import java.net.URL; import java.net.URLEncoder; public class BaiduShortUrl { public static void main(String[] args) { String longUrl = "http://www.baidu.com"; // 待转换的长链接 String apiKey = "你的API Key"; // 填写你在百度网址申请的API Key String url = "http://dwz.cn/create.php"; String param = "url=" + URLEncoder.encode(longUrl, "UTF-8") + "&apikey=" + apiKey; String result = sendGet(url, param); System.out.println(result); } private static String sendGet(String url, String param) { String result = ""; BufferedReader in = null; try { String urlNameString = url + "?" + param; URL realUrl = new URL(urlNameString); HttpURLConnection connection = (HttpURLConnection) realUrl.openConnection(); connection.setRequestMethod("GET"); connection.connect(); in = new BufferedReader(new InputStreamReader(connection.getInputStream(), "UTF-8")); String line; while ((line = in.readLine()) != null) { result += line; } } catch (Exception e) { System.out.println("发送GET请求出现异常:" + e); e.printStackTrace(); } finally { try { if (in != null) { in.close(); } } catch (Exception e2) { e2.printStackTrace(); } } return result; } } ``` 在上面的代码中,你需要替换 `longUrl` 和 `apiKey` 的值。`longUrl` 是你要转换成链接的长链接,`apiKey` 是你在百度网址申请的API Key。运行代码后,你将会得到一个 JSON 格式的响应,其中包含了生成链接
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值