2

所以我还在学习iOS和JSON。

所以我认为我已经了解了基础知识(显然是一些东西):也许它是一个编码问题。

#define flickrGetURL [NSURL URLWithString:@"http://www.flickr.com/services/rest/?method=flickr.photos.search&tags=football&safe_search=1&per_page=20&format=json&api_key=YOURAPIREPLACESHERE"]

NSData* data = [NSData dataWithContentsOfURL:flickrGetURL];
NSError* error;
//this works
NSString *stringData = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"Response data being called : %@", stringData);

NSDictionary* json = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error];
if(json == nil)
{
    NSLog(@"NULL");
}else 
    NSLog(@" WORKED");

所以 URL 请求看起来不错,字符串打印出完整的 JSON 对象。但是我创建的 JSON 对象是 NILL,可能是编码问题。

和编码有关系吗??(在非 Twitter JSON 页面上,这种方法有效)。

4

1 回答 1

2

我不确定试试这个,

在您的代码中将 url 格式更改为此并检查


[NSURL URLWithString:[NSString stringWithFormat:@"http://api.flickr.com/services/rest/?method=flickr.photos.search&api_key=%@&text=%@&per_page=20&format=json&nojsoncallback=1",kFlickrAPIKey,searchTerm]];


where,searchTerm string 你在搜索什么

于 2013-10-30T11:42:00.513 回答