C# İle Google Url Kısaltma Servisini Kullanalım

Bazı projelerinizde adres kısaltma servislerini kullanma ihtiyacımız olabilir. Adres kısaltma servisi veren birçok web sitesi mevcuttur. Ben Google URL kısaltmak servisi olan “http://goo.gl” ‘yi kullanacağım. Aşağıdaki gibi bir Windows Form tasarladım ve button Click olayına aşağıdaki kodlarımı ekledim.

form

[csharp]

var httpWebRequest = (HttpWebRequest)WebRequest.Create("https://www.googleapis.com/urlshortener/v1/url");
httpWebRequest.ContentType = "application/json";
httpWebRequest.Method = "POST";

using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
{
string json = "{\"longUrl\":\""+txtLongUrl.Text+"\"}";
streamWriter.Write(json);
}

var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
{
string line;
//Servisten gelen sonucu satır satır okuyoruz.
while ((line = streamReader.ReadLine()) != null)
{
//bize sadece kısaltırmış url lazım olduğu için id ile eşleşen bir satır arayıp ihtiyacımız olan
//kısaltırmış URL’yi alıyoruz.
if (line.Contains("id"))
{
txtSortUrl.Text = ClearText(line, ";,\"{ }\\");
}
}
}

[/csharp]

Birde metin temizleme işlemleri için kullanacağım metot’umu yazıyorum.

[csharp]

//Dönen JSON sonucunu ClearText metodumuz ile gerekli olmayan karakterleri temizleme işlemine tabi tutacağız.
string ClearText(string text, string removeText)
{
string value = text;
foreach (char item in removeText)
{
value = value.Replace(item.ToString(), string.Empty);
}
return value.Replace("id:", string.Empty).Trim();
}

[/csharp]

result

Kodlar açık olduğu için çok fazla detaya inmedim. Kodları biraz daha geliştirerek Google altyapısını kullanarak kendi URL kısaltma projelerinizi geliştirebilirsiniz. Takıldığınız bir konu olursa yorum panelinden sorabilirsiniz.

Yararlı Olması dileğiyle..

Mesut Güneş

Selçuk Üniversitesi Bilgisayar programcılığı bölümünden mezun olduktan sonra birçok firmada Yazılım, İş zekası ve Veritabanı Uzmanı olarak çalıştım. Şuan Türkiye’nin en büyük şirketlerinden biri olan Doğan Online’da Veritabanı Yöneticisi olarak çalışıyorum.

You may also like...

3 Responses

  1. Sinan.öztekin dedi ki:

    Benim için çok faydalı oldu çok uğraşmıştım ben meğer bu kadar basit ve kolaymış. teşekkür ederim Mesut bey.

  2. karr.ga dedi ki:

    Faydalı bilgi için teşekkürler. Listeme ekledim.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.