2011-05-02 38 views
3

我創建了一個應用程序,它使用GData客戶端庫在文本字段中獲取我的YouTube視頻的網址。現在我想用api縮短那個url ..但是我對此沒有想法。如何整合bitly api,縮短我的iPhone鏈接sdk

如果有人在我面前做過,請告訴我你是如何做到的。

謝謝,

Chakradhar。

回答

3

這是做這件事的快速簡便的方法。 您將需要使用bit.ly進行註冊並獲取登錄名和API密鑰。

NSString *username = @"user"; 
NSString *apiKey = @"R_11111111111111"; 
NSString *url = @"yoururl.com"; 

NSString *shortURL = [NSString stringWithContentsOfURL:[NSURL URLWithString:[NSString stringWithFormat:@"http://api.bit.ly/v3/shorten?login=%@&apikey=%@&longUrl=%@&format=txt", username, apiKey, url]] encoding:NSUTF8StringEncoding error:nil]; 
+0

注意這是同步並可能導致該應用程序掛一秒鐘,如果網絡太慢 – 2014-06-26 18:20:04

1

這工作很適合我,而且因爲它是一個synchroeous要求有一個輕微的延遲,以獲取鏈接,所以你可能想顯示進度HUD:

NSString *accessToken = YOUR_ACCESS_TOKEN; 
    NSString *url = YOUR_URL; 

    NSString *bitlyRequest = [NSString stringWithFormat:@"https://api-ssl.bitly.com/v3/shorten?access_token=%@&longUrl=%@",accessToken, url]; 
    NSString *bitlyResponse = [NSString stringWithContentsOfURL:[NSURL URLWithString:bitlyRequest] encoding:NSUTF8StringEncoding error:nil]; 

    NSData *data = [bitlyResponse dataUsingEncoding:NSUTF8StringEncoding]; 
    NSDictionary *bitlyDictionary = [NSJSONSerialization JSONObjectWithData:data options:0 error:nil]; 

    NSString *bitlyUrl = bitlyDictionary[@"data"][@"url"]; 
+0

它也適用於我 – 2016-05-10 04:43:04