【问题标题】:Can't fetch data from NSURL无法从 NSURL 获取数据
【发布时间】:2013-05-20 17:45:26
【问题描述】:

我正在从 google 地方搜索 url 获取结果,如果我搜索“Newyork”,一切正常。但是如果我给“New york”,结果 json 是不同的,我不能在 NSData 中接受它。 这是我正在使用的网址:

https://maps.googleapis.com/maps/api/place/textsearch/json?query=Newyork&sensor=true&key=MY_KEY

我正在使用下面的代码来获取数据:

NSURL *googleURL = [NSURL URLWithString:url];  //url is above url
NSURLResponse *response;
NSData *data;

NSError    *error;

data = [NSURLConnection sendSynchronousRequest: [NSURLRequest
                                                 requestWithURL: googleURL]   returningResponse: &response error: &error];


NSLog(@"data %@",data);   // but I am getting null here

如何克服这个问题?提前致谢

【问题讨论】:

    标签: iphone objective-c nsurlconnection google-places-api nsurlrequest


    【解决方案1】:

    假设url 是:

    NSString *url = @"https://maps.googleapis.com/maps/api/place/textsearch/json?query=New york&sensor=true&key=MY_KEY";
    

    试试这个:

    NSURL *googleURL = [NSURL URLWithString:[url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]];
    

    这将为包含空格的 URL 格式化字符串。要确认它是否正常工作,请将其打印到控制台。

    NSLog(@"URL with Percent Escapes: %@", [url stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]);
    

    它应该返回类似这样的东西(我相信空格的百分比转义是%20)。

    URL with Percent Escapes: https://maps.googleapis.com/maps/api/place/textsearch/json?query=New%20york&sensor=true&key=MY_KEY
    

    【讨论】:

      猜你喜欢
      • 2017-07-10
      • 1970-01-01
      • 1970-01-01
      • 2015-10-17
      • 2013-06-26
      • 2018-09-03
      • 2013-11-24
      • 2015-04-06
      • 2012-02-02
      相关资源
      最近更新 更多