【发布时间】:2014-05-25 19:52:34
【问题描述】:
我似乎无法让我的网络代码工作。在过去的两天里,我至少花了几个小时浏览文档和谷歌,但我无法弄清楚。无论出于何种原因,我的NSURLSession 似乎没有发送标题。我在 Postman for Chrome 中执行了正确的请求,并使用了这些确切的参数,所以我知道我没有发送不正确的数据。我继续收到一个错误,我可以通过删除标头参数在 Postman 中重现该错误。
代码:
NSURLSessionConfiguration *sessionConfig = [NSURLSessionConfiguration defaultSessionConfiguration];
NSDictionary *sessionHeaders = [[NSDictionary alloc] initWithObjectsAndKeys:
@"application/json", @"Accept", @"application/xml", @"Content-Type",
[NSString stringWithFormat:@"LivePerson appKey=%@", self.getAppKey], @"Authorization", nil];
sessionConfig.HTTPAdditionalHeaders = sessionHeaders;
NSURLSession *session = [NSURLSession sessionWithConfiguration:sessionConfig];
NSURLSessionDataTask *endpoints = [session dataTaskWithURL:[NSURL URLWithString:baseURL]
completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
NSDictionary *endpoints = [NSJSONSerialization JSONObjectWithData:data options:0 error:&error];
NSLog(@"%@", endpoints);
}];
【问题讨论】:
-
我要尝试的第一件事是通过使用调试代理服务器转储请求(例如Charles)来确认问题是否是您认为的问题。这意味着您是不猜测出了什么问题,但能够并排比较来自 Chrome 和 NSURLSession 代码的请求。
标签: ios objective-c nsurlsession nsurlsessionconfiguration