溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

ASP.NET如何通過第三方網(wǎng)站Bitly實現(xiàn)短鏈接地址程序

發(fā)布時間:2021-08-27 09:58:21 來源:億速云 閱讀:101 作者:小新 欄目:開發(fā)技術(shù)

這篇文章將為大家詳細講解有關(guān)ASP.NET如何通過第三方網(wǎng)站Bitly實現(xiàn)短鏈接地址程序,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

發(fā)微博很久了,或許是我之前沒注意,現(xiàn)在特別關(guān)注那個微博中的圖片鏈接和URL鏈接,總給我看不懂但是又那么短的感覺,反正不是我上傳的地址,其實這里使用一個短鏈接服務(wù)功能,這里拿出來曬曬。

ASP.NET如何通過第三方網(wǎng)站Bitly實現(xiàn)短鏈接地址程序

這里看看是指向淘寶的一個商品頁面,鏈接地址是這樣的 ,但是現(xiàn)在在微博中變成了紅圈表名的那個樣子,似乎看不懂了,而且你點擊之后還是到你原有的頁面。這里就是使用了短鏈接程序服務(wù),包括圖片等等都是這樣,可以縮短url長度。

Bitly 是世界上最流行的短鏈接服務(wù),而且已經(jīng)免費開放所有功能。點擊訪問官網(wǎng) Bitly.com

下面介紹服務(wù)使用步驟:

(1) 到官網(wǎng)注冊獲取相應(yīng)的APIKey

ASP.NET如何通過第三方網(wǎng)站Bitly實現(xiàn)短鏈接地址程序

(2)到Setting頁面獲得Key值

ASP.NET如何通過第三方網(wǎng)站Bitly實現(xiàn)短鏈接地址程序

因為只有注冊之后才能使用它相應(yīng)的服務(wù),所以這里先注冊一個用戶

(3)下載Bitly服務(wù)包

下載地址如下: http://urlshortenerhelper.codeplex.com/

(4)新建一個項目,我這里使用VS2010 MVC3項目

新建之后要在VS工程中添加外部引用包,也就是安裝UrlShortener ,剛才下載的文件

(5)在Package Manager Console 命令中安裝UrlShortener ,我這里安裝的是UrlShortener.0.9.1

ASP.NET如何通過第三方網(wǎng)站Bitly實現(xiàn)短鏈接地址程序

輸入Install-Package UrlShortener 命令之后 顯示下面的表示安裝成功!

(6) 到上面之后一切OK,接下來就是編碼的事情,代碼非常簡單。

安裝成功之后,項目工程中會有一個文件包 packages ,里面就是一些dll文件,然后會添加兩個dll到工程中。

ASP.NET如何通過第三方網(wǎng)站Bitly實現(xiàn)短鏈接地址程序

(7)代碼展示

URL轉(zhuǎn)化之前必須設(shè)置用戶以及剛才獲得Key值

UrlShortener.Settings.UserName = "qingyuan";

UrlShortener.Settings.ApiKey = "R_0daabdbac0fd2b58f097da9f5a1f7917";

應(yīng)用代碼如下

<p>
@{
 string url = UrlShortener.Shorten("http://www.cnblogs.com/qingyuan/");
 string image = UrlShortener.Shorten("http://images.cnblogs.com/cnblogs_com/qingyuan/242728/r_qingyuan.jpg");
 string localhost = UrlShortener.Shorten("http://127.0.0.1/index.html");
}

<div>
 <label>顯示:</label>
 <span>
 <a href="@url">@url</a>
 </span>
</div><br />
<div>
 <label>圖片短鏈接:</label>
 <span>
 <img src="@image" />
 </span>
</div><br />
<div>
 <label>本機地址:</label>
 <span>
 <a href="@localhost">@localhost</a>
 </span>
</div><br /></p>

展示效果圖如下

ASP.NET如何通過第三方網(wǎng)站Bitly實現(xiàn)短鏈接地址程序

這里就達到了短鏈接的效果,相對之前的URL短了很多,而且url已經(jīng)混淆了。

下面介紹幾個遇到的問題:

(1) 不設(shè)置UserName或ApiKey 會出現(xiàn)如下問題

ASP.NET如何通過第三方網(wǎng)站Bitly實現(xiàn)短鏈接地址程序

(2) 果如ApiKey的值不正確會出現(xiàn)如下問題

ASP.NET如何通過第三方網(wǎng)站Bitly實現(xiàn)短鏈接地址程序

更新獲取短鏈接算法參考代碼

static void Main(string[] args)
{
 string url = "http://www.cnblogs.com/qingyuan/asdf/asdf/11/24/UrlShortener.html";
 string[] results = ShortUrl(url);
 foreach (string item in results)
 {
 System.Console.WriteLine(item);
 }
}

public static string[] ShortUrl(string url)
{
 string[] chars = new string[] {"a" , "b" , "c" , "d" , "e" , "f" , "g" , "h" ,
 "i" , "j" , "k" , "l" , "m" , "n" , "o" , "p" , "q" , "r" , "s" , "t" ,
 "u" , "v" , "w" , "x" , "y" , "z" , "0" , "1" , "2" , "3" , "4" , "5" ,
 "6" , "7" , "8" , "9" , "A" , "B" , "C" , "D" , "E" , "F" , "G" , "H" ,
 "I" , "J" , "K" , "L" , "M" , "N" , "O" , "P" , "Q" , "R" , "S" , "T" ,
 "U" , "V" , "W" , "X" , "Y" , "Z"};
 string value = UserMd5(url);
 System.Console.WriteLine("MD5加密之后字符串: "+value+"\n字符串長度"+value.Length);
 string[] results = new string[value.Length / 8];
 for (int i = 0; i < value.Length/8; i++)
 {
 string tempResult = value.Substring(i*8,8);
 long lHexLong = 0x3FFFFFFF & long.Parse(tempResult);
 string outchar = "";
 for (int j = 0; j < 6; j++)
 {
  long index = 0x0000003D & lHexLong;
  outchar += chars[(int)index];
  lHexLong = lHexLong >> 5;
 }
 results[i] = outchar;
 }
 return results;
}

static string UserMd5(string str)
{
 string key = "qingyuan";
 string cl = str+key;
 string pwd = "";
 MD5 md5 = MD5.Create();
 byte[] s = md5.ComputeHash(Encoding.UTF8.GetBytes(str));
 for (int i = 0; i < s.Length; i++)
 {
 pwd = pwd + s[i];
 }
 return pwd;

}

關(guān)于“ASP.NET如何通過第三方網(wǎng)站Bitly實現(xiàn)短鏈接地址程序”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI