0

我的代码:

NSString *urlString = [NSString stringWithFormat:@"%@%@%@%@", @"http://api.search.live.net/json.aspx?Appid=am hiding the appid &query=",text,@"&sources=web&web.offset=",offvalue];
NSURL *url = [NSURL URLWithString:urlString];
NSData *data = [NSData dataWithContentsOfURL:url];

JSON 响应:

SearchResponse =     {
        Errors =         (
                        {
                Code = 1002;
                HelpUrl = "http://msdn.microsoft.com/en-us/library/dd251042.aspx";
                Message = "Parameter has invalid value.";
                Parameter = "SearchRequest.AppId";
                Value = " am hiding the value";
            }
        );
        Query =         {
            SearchTerms = iphone;
        };
        Version = "2.2";
    };
}

我在这里做错了什么。谁能纠正我的查询?如何使用 2.2 版的 bing API

4

2 回答 2

0

看来您输入了错误的 AppID。

Parameter = "SearchRequest.AppId";

确保 AppID 与他们为您的应用分配服务的 appID 匹配。

另外(这有时会随机给我带来问题)确保在 URL 字符串的末尾放置 /。

于 2013-10-14T23:54:38.033 回答
0

'text'的值是什么,这是一个词还是多个词?您需要对参数“文本”执行 URL_Encode 以获得有效的 URL。

请参阅Objective-C 和 Swift URL 编码 确保仅在文本对象上使用 URL_Encoding 而不是在整个 URL 上,否则“http://”也会被编码,从而导致 URL 无效

例如,空格应该是 %20 ,您可以通过添加 URL 的 NSLog 来验证这一点

于 2013-10-15T00:37:32.297 回答