最近接了一個(gè)需求,涉及到了短鏈接的相關(guān)的知識(shí),于是去查閱了相關(guān)的資料,在這里給大家整理分享一下。
為中陽等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及中陽網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、中陽網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
舉個(gè)例子,現(xiàn)在我的推廣的地址是這個(gè):https://blog.csdn.net/CSDNedu/article/details/96436633
我通過新浪的短鏈接服務(wù)可以將上面的地址轉(zhuǎn)成: https://t.cn/A6wTyLdA
那我為什么要將原有的URL轉(zhuǎn)成較短的鏈接呢?比如我們發(fā)短信提醒用戶去XXX,XXX有優(yōu)惠活動(dòng),在文案上往往會(huì)帶有一個(gè)鏈接進(jìn)行跳轉(zhuǎn),方便用戶快速去到對(duì)應(yīng)的活動(dòng)落地頁。而短信的發(fā)送是需要成本的,短信的成本主要有兩方面組成:
①、發(fā)送的人數(shù)(發(fā)的人越多,自然短信的花費(fèi)就越大,這個(gè)我就不解釋了)
②、短信發(fā)送的字?jǐn)?shù)(比如,文案總字?jǐn)?shù)超過70個(gè)字,那就算兩條短信計(jì)費(fèi),超過140個(gè)字就算三條短信計(jì)費(fèi))
③、所以在發(fā)送短信給用戶時(shí):要么就投放更加精準(zhǔn)優(yōu)質(zhì)的用戶,以便控制好發(fā)送的數(shù)量,要么就盡可能控制文案的字?jǐn)?shù)。
顯然,如果在短信上配上普通的URL,那真正的文案可寫的字?jǐn)?shù)就沒多少了。于是我們可以發(fā)現(xiàn),各大公司的短信推送的URL都是短鏈接。
好了廢話不多說了直接進(jìn)入推薦環(huán)節(jié):
短鏈接在線生成工具:
①、 http://maiyurl.cn/
②、 http://dogdwz.cn/
使用說明:
①、復(fù)制要縮短的網(wǎng)址。打開上述平臺(tái)提供的縮短網(wǎng)址服務(wù)。網(wǎng)站提供 新浪短鏈接(T.cn)/騰訊短鏈接(Url.cn)
②、將要縮短的鏈接粘貼到生成器的輸入框中。點(diǎn)擊“生成”按鈕。所有更短的網(wǎng)站都有一個(gè)按鈕旁邊的URL字段,點(diǎn)擊時(shí),它會(huì)為您創(chuàng)建縮短的URL鏈接。保存好縮短的鏈接就可以使用了!
API接口地址
①、 http://maiyurl.cn/yunapi.html
②、 http://dogdwz.cn/api.html
使用說明:
將 短網(wǎng)址api接口地址中 "http://www.baidu.com"換成需要縮短的網(wǎng)址,然后直接復(fù)制前往瀏覽器中打開即可。
PHP調(diào)用演示:
$url = ‘http://www.baidu.com‘; $api_url = ‘http://www.qqdwz.cn/sina.php?url_long=http://www.baidu.com; $short_url = file_get_contents($api_url); echo $short_url;
JAVA調(diào)用演示:
public static void main(String path[]) throws Exception { URL u = new URL("http://www.qqdwz.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調(diào)用演示:
import urllib, urllib2, sys host = ‘http://www.qqdwz.cn‘ path = ‘sina.php?url_long=‘ method = ‘GET‘ querys = ‘url=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)
這也是一個(gè)有意思的問題。這個(gè)問題主要是考察你對(duì)301和302的理解,以及瀏覽器緩存機(jī)制的理解。
301是永久重定向,302是臨時(shí)重定向。短地址一經(jīng)生成就不會(huì)變化,所以用301是符合http語義的。但是如果用了301, Google,百度等搜索引擎,搜索的時(shí)候會(huì)直接展示真實(shí)地址,那我們就無法統(tǒng)計(jì)到短地址被點(diǎn)擊的次數(shù)了,也無法收集用戶的Cookie, User Agent 等信息,這些信息可以用來做很多有意思的大數(shù)據(jù)分析,也是短網(wǎng)址服務(wù)商的主要盈利來源。所以,正確答案是302重定向。