2008-12-14 19 views

Odpowiedz

17

Powinieneś raczej dodać sprawdzanie błędów, itp, ale to chyba najprostszy sposób to zrobić:

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); 
+0

Którego zestawu musimy użyć dla 'System.Net.Uri'? – user1509

+0

System.dll (patrz http://msdn.microsoft.com/en-us/library/system.uri.aspx) – mcrumley

+0

, więc istnieje korekta, jego 'System.Uri', a nie' System.Net.Uri' – user1509

10

Po wykonaniu niektórych więcej badań ... natknąłem się na następujący kod:

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; 
     } 
    } 

Wygląda to może załatwić sprawę.

4

Pamiętaj, że jeśli korzystasz z aplikacji na pełną skalę, oznacza to, że używasz ściśle określonej zależności od schematu URL/API TinyURL. Może mają gwarancje o ich URL nie zmienia, ale to warto sprawdzić

+0

Dzięki Paul ... dobra rada! – mattruma

+3

Upewnię się, aby Paul z sześciu lat temu wiedział, –

-1

Jest to bardzo łatwo w .Net użyjemy Tiny URL API, aby wygenerować mały adres URL.

Aby uzyskać więcej informacji, zapoznaj się z podanym poniżej linkiem.

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; 
 
      } 
 
     }

Powiązane problemy