2008-12-14 33 views

回答

17

你或許應該增加一些錯誤檢查,等等,但是這可能是做的最簡單的方法:

System.Uri address = new System.Uri("http://tinyurl.com/api-create.php?url=" + YOUR ADDRESS GOES HERE); 
System.Net.WebClient client = new System.Net.WebClient(); 
string tinyUrl = client.DownloadString(address); 
Console.WriteLine(tinyUrl); 
10

做一些進一步的研究之後......我偶然發現了下面的代碼:

public static string MakeTinyUrl(string url) 
    { 
     try 
     { 
      if (url.Length <= 30) 
      { 
       return url; 
      } 
      if (!url.ToLower().StartsWith("http") && !Url.ToLower().StartsWith("ftp")) 
      { 
       url = "http://" + url; 
      } 
      var request = WebRequest.Create("http://tinyurl.com/api-create.php?url=" + url); 
      var res = request.GetResponse(); 
      string text; 
      using (var reader = new StreamReader(res.GetResponseStream())) 
      { 
       text = reader.ReadToEnd(); 
      } 
      return text; 
     } 
     catch (Exception) 
     { 
      return url; 
     } 
    } 

看起來它可以做的伎倆。

4

請記住,如果您正在製作一個全面的應用程序,那麼您將對TinyURL的URL/API方案進行相當具體的依賴關係。也許他們有他們的網址不改變的保證,但它是值得一試

+0

感謝保羅...很好的建議! – mattruma 2008-12-14 03:36:31

+3

我會確保讓六年前的Paul知道 – 2014-09-02 16:03:54

-1

這是非常在.Net中很容易,我們將使用Tiny URL API來生成微小的URL。

欲瞭解更多信息,請參閱下面的給定鏈接。

http://www.freshcodehub.com/Article/38/convert-url-to-shorten-url-or-tiny-url-in-aspnet-with-c

public static string MakeTinyUrl(string Url) 
 
     { 
 
      try 
 
      { 
 
       if (Url.Length <= 12) 
 
       { 
 
        return Url; 
 
       } 
 
       if (!Url.ToLower().StartsWith("http") && !Url.ToLower().StartsWith("ftp")) 
 
       { 
 
        Url = "http://" + Url; 
 
       } 
 
       var request = WebRequest.Create("Need to put tiny URL API" + Url); 
 
       var res = request.GetResponse(); 
 
       string text; 
 
       using (var reader = new StreamReader(res.GetResponseStream())) 
 
       { 
 
        text = reader.ReadToEnd(); 
 
       } 
 
       return text; 
 
      } 
 
      catch (Exception) 
 
      { 
 
       return Url; 
 
      } 
 
     }

相關問題