分类: PHP
2020-03-07 13:35:02
很多朋友都有这样一个需求,就是经常要把一个比较冗长的推广网址缩短成10个字符以内的短网址。固今天给大家分享几个稳定的短网址官方接口。
短网址的应用场景很广,譬如短信营销、邮件推广、微信营销、QQ营销、自媒体推广、渠道推广等,都会用到短网址。究其原因是在于短网址可以降低推广成本、用户记忆成本,提高用户点击率;在特定的场景下推广还能规避关键词,防止域名被屏蔽、被拦截,隐藏真实地址等。
t.cn(新浪微博)
格式1:
格式2:
格式3:
格式4:
格式5:
url.cn(腾讯微信)
格式1:
格式2:
格式3:
格式4:
格式5:
1、请求方式
POST
2、返回格式
直接返回 “”
直接返回 “”
3、使用方法
① 在线使用
只需将 “” 换成需要缩短的长网址(要带http(s)://),然后复制整串链接前往浏览器打开即可生成。
② 请求接口
设置服务器请求接口生成,每请求一次返回一个结果,相关请求示例如下。
4、请求示例(以t.cn接口为例)
① PHP:
$url = ''; $api_url = '/tcn-api.json?url=; $short_url = file_get_contents($api_url); echo $short_url;
② Java:
public static void main(String path[]) throws Exception { URL u = new URL("/tcn-api.json?url="); 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 = '' path = '/tcn-api.json' method = 'GET' querys = 'url_long=http%3A%2F%2F' bodys = {} url = host + path + '?' + querys request = urllib2.Request(url) response = urllib2.urlopen(request) content = response.read() if (content): print(content)
补充说明:
1、请求接口时,如果生成短网址后,发现原网址的参数丢失了,则需要给原链接做urlencode处理,然后再去生成。
2、请求接口的长网址必须要以http(s)://开头。
3、接口请求频率建议不要太快,正常1次/s。
常见问题:
1、长网址转换后,为什么参数丢失了?
答:因为没有做urlencode处理,导致某些特殊字符没有识别到。需要将url编码后再请求接口。
2、请求接口为什么没有返回结果?
答:有些时候接口返回数据有延迟,就会导致超时未返回。或者是因为原链接被封了。
3、生成的短网址有效期是多久?有没有访问次数限制?
答:共享接口生成的短网址是有有效期的,正式版的接口生成的短网址都是永久有效的。
4、短网址有没有访问限制?
答:此接口是基于腾讯官方接口研发,无访问次数限制,可以放心使用。
原文转载自: 转载请标明出处!