bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

HTTP的長連接和短連接轉換接口(API)

什么是長連接?

HTTP1.1協議規定了web地址默認保持長連接(HTTP persistent connection ,也有翻譯為持久連接),所以在web服務端獲取到的鏈接都只能是原始長連接。

成都創新互聯公司主營荔城網站建設的網絡公司,主營網站建設方案,手機APP定制開發,荔城h5成都微信小程序搭建,荔城網站營銷推廣歡迎荔城等地區企業咨詢

什么是短連接?

短連接(short-url),顧名思義就是在形式上比較短的鏈接,可能很多朋友都已經不再陌生,特別是在微博應用中十分普遍,比如,當我們在騰訊、新浪微博發微博時有時發很長的網址連接,但由于微博只限制140個字,所以微博就自動把您發的長連接給轉換成短連接了。無可否認在微博和手機短信提醒等限制字數的地方來使用短網址,的確是一個不錯的方案。

長連接和短連接轉換接口

新浪短鏈接接口:http://lnurl.cn/sina/short-api?link=http://www.baidu.com

微信短鏈接接口:http://lnurl.cn/weixin/short?link=http://www.baidu.com


接口使用說明:

1、在線使用

將API地址中?"http://www.baidu.com"?的部分換成自己的長連接,然后復制完整地址前往瀏覽器中粘貼打開就能生成了。(簡而言之就是更換url后面的鏈接)

2、請求接口

如果你的量比較大,一條一條轉換太麻煩了,需要批量生成的話,可以將API接口對接到程序中請求生成,請求示例如下。

?

PHP請求示例:

$url?=?'http://www.baidu.com';
$api_url?=?'http://lnurl.cn/sina/short-api?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://lnurl.cn/sina/short-api?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://lnurl.cn'
path?=?'/sina/short-api'
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、調用API接口時,只需將 “http://www.baidu.com”換成需要縮短的長鏈接即可。

2、接口支持鏈接中帶參數,但要注意的是當鏈接中出現 & 符號時,請用 %26 代替(或者使用url編碼),否則參數可能會丟失。

3、更換鏈接時,必須要以http(s)://開頭,否則可能會導致短網址生成失敗或者生成的短網址無法跳轉訪問原網站。

?

常見問題:

1、長鏈接轉換后,為什么結尾的參數丟失了?

答:因為長鏈接中含有特殊字符,需要將url編碼后再使用接口生成。

2、接口沒有返回結果,是什么情況?

答:有些時候接口返回數據會有延遲,超時未返回即生成失敗,也就不會返回結果;或者是因為原鏈接被封了。

3、生成的短連接有效期是多久?有沒有訪問次數限制?

答:生成的短連接(t.cn&url.cn)是永久有效的,沒有點擊次數限制,可以放心使用。

?

算法原理

算法一

1) 將長網址md5生成32位簽名串,分為4段, 每段1個字節(即8位);

2) 對這四段循環處理, 取4個字節(32位), 將他看成16進制串與0x3fffffff(30位1)與操作, 即超過30位的忽略處理;

3) 這30位分成6段, 每5位的數字作為字母表的索引取得特定字符, 依次進行獲得6位字符串;

4) 總的md5串可以獲得4個6位串; 取里面的任意一個就可作為這個長url的短url地址;

算法二

把數字和字符組合做一定的映射,就可以產生唯一的字符串,如第62個組合就是aaaaa9,第63個組合就是aaaaba,再利用洗牌算法,把原字符串打亂后保存,那么對應位置的組合字符串就會是無序的組合。

把長網址存入數據庫,取返回的id,找出對應的字符串,例如返回ID為1,那么對應上面的字符串組合就是bbb,同理 ID為2時,字符串組合為bba,依次類推,直至到達62種組合后才會出現重復的可能,所以如果用上面的62個字符,任意取6個字符組合成字符串的話,你的數據存量達到500多億后才會出現重復的可能。

當前文章:HTTP的長連接和短連接轉換接口(API)
文章URL:http://vcdvsql.cn/article48/pegcep.html

成都網站建設公司_創新互聯,為您提供云服務器手機網站建設商城網站企業網站制作全網營銷推廣虛擬主機

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

成都定制網站網頁設計