Consuming URL Shortening Services - is.gd

No.of Views819
Bookmarked0 times
Downloads 
Votes0
By  Geming Leader   On  30 Aug 2010 11:08:41
Tag : Web Service , Miscellaneous
Another article of our series that talks about accessing URL shortening services programmatically. This article is talking about is.gd shortening service, how you can use it, and how to access it via your C#/VB.NET application.
emailbookmarkadd commentsprint

Images in this article missing? We recently lost them in a site migration. We're working to restore these as you read this. Should you need an image in an emergency, please contact us at info@codegain.com

 
This article is also available in my blog, Just Like a Magic.
هذه المقالة متوفرة أيضا باللغة العربية، اقرأها هنا.
Read more about URL Shortening Services here.

Contents Contents of this article:

  • Contents
  • Overview
  • Introduction
  • API
  • What's next

Overview

Another article of our series that talks about accessing URL shortening services programmatically.

This article is talking about is.gd shortening service, how you can use it, and how to access it via your C#/VB.NET application.

Introduction

is.gd is one of the most popular shortening services ever in the web because of its simple interface and its easy-to-use API.

When you visit service website, http://is.gd, you can see that nothing easier from is.gd, just push your long URL into the text box and click the shortening button.

API

is.gd provides you a very simple easy-to-use API. This API contains only one function that's used for shortening URLs. Another good thing is that this function doesn't require any kind of authentication for users. Therefore, you need just to spam it with your long URL (as you did with the website.)

This glorious function is called http://is.gd/api.php, it accepts only a single argument, longurl, which can be set to the long URL you need to shorten. When you call the function, it simply returns the shortened URL as plain text (no more overhead.)

Now, let's try this function. We'll try to shorten the URL http://JustLikeAMagic.com with our function. First, connect the arguments, http://is.gd/api.php?longurl=http://JustLikeAMagic.com. Now copy this address and paste it into your favorite browser. If everything was OK, you should see the short URL after clicking €˜Go' in the browser toolbar.

Now, let's do it in C# and VB.NET. Check the following function that tries to shorten long URLs via the id.gd API:

// C#

string Shorten(string url)
{
    url = Uri.EscapeUriString(url);
    string reqUri = String.Format(@"http://is.gd/api.php?longurl={0}", url);

    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(reqUri);
    req.Timeout = 5000;


    try
    {
        using (System.IO.StreamReader reader =
            new System.IO.StreamReader(req.GetResponse().GetResponseStream()))
        {
            return reader.ReadLine();
        }
    }
    catch (WebException ex)
    {
        return ex.Message;
    }
}
' VB.NET

Function Shorten(ByVal url As String) As String

    url = Uri.EscapeUriString(url)
    Dim reqUri As String = _
        String.Format("http://is.gd/api.php?longurl={0}", url)
    Dim req As WebRequest = WebRequest.Create(reqUri)
    req.Timeout = 5000

    Try
        Dim reader As System.IO.StreamReader = _
            New System.IO.StreamReader(req.GetResponse().GetResponseStream())

        Dim retValue As String = reader.ReadLine()
        reader.Dispose()

        Return retValue
    Catch ex As WebException
        Return ex.Message
    End Try

End Function

Notice that we have used the function System.Net.Uri.EscapeUriString() to eliminate unacceptable characters from the URL by encoding them.

Notice too that we have included our code in a Try-Catch block so we can catch exceptions before they blow up our application.

What's next

Consider reading other articles in this series here.

 
Sign Up to vote for this article
 
About Author
 
Geming Leader
Occupation-Software Engineer
Company-Just Like a Magic
Member Type-Expert
Location-Egypt
Joined date-30 Jul 2009
Home Page-http://WithDotNet.net
Blog Page-http://JustLikeAMagic.com
Independent software developer, trainer, and technical writer from Egypt born in 1991
 
 
Other popularSectionarticles
    Another article of our endless series that talks about accessing URL shortening services programmatically.This article is talking about 1click.at shortening service, how you can use it, and how to access it via your C#/VB.NET application.
    Published Date : 27/Dec/2010
    This is another article of our URL shortening services series. This article is talking about X.co shortening service provided by Go Daddy. If you don’t know how to access this service from your .NET application, then it’s the time to. We’ll have a complete discussion of the WCF services offered by X.co. Then, we’ll consider the RESTful interfaces provided.
    Published Date : 23/Sep/2010
    This is a very hot article that you can’t leave without checking it first. This article is talking about the most popular and powerful URL shortening service ever, bit.ly. Today, we are going to talk about bit.ly API, its functions, and how you can access them from your .NET application. Don’t forget to download the sample code at the end of the article. Let’s go!
    Published Date : 02/Sep/2010
    This is another article that talks about URL shortening services. Today we are going to talk about Cligs, one of the popular shortening services on the web. Be prepared!
    Published Date : 02/Sep/2010
    Just another article of the URL shortening services series. Today, we are going to talk about another hot and easy-to-use service, it's Tweetburner. If you haven't used it before, then it's the time to. We're going to discuss how to use Tweetburner first. After that, we'll inspect its API and learn how to use it in your .NET application.
    Published Date : 31/Aug/2010
Comments
There is no comments for this articles.
Leave a Reply
Title:
Display Name:
Email:
(not display in page for the security purphase)
Website:
Message:
Please refresh your screen using Ctrl+F5
If you can't read this number refresh your screen
Please input the anti-spam code that you can read in the image.
^ Scroll to Top