IOS 9 NSURLConnection veraltet
Habe ich ein Upgrade auf IOS9 xcode, und ich arbeite nicht die Methode der Erlangung Antwort auf meine webservice dieser Teil NSData *urlData=[NSURLConnection sendSynchronousRequest:Anfrage returningResponse:&Antwort-Fehler:&error]; ist veraltet.
NSString *post =[[NSString alloc] initWithFormat:@"lang=%@&type=ssss",@"en"];
NSURL *url=[NSURL URLWithString:@"http://www.xxxxxxxxxx.com/xxxxxxx/ws/get_xxxxx.php"];
NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES];
NSLog(@"esta es la url: %@", postData);
NSString *postLength = [NSString stringWithFormat:@"%lu", (unsigned long)[postData length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
[request setURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
[request setValue:@"application/x-www-form-urlencoded" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:postData];
NSError *error = [[NSError alloc] init];
NSHTTPURLResponse *response = nil;
NSData *urlData=[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
if ([response statusCode] >=200 && [response statusCode] <300)
{
NSDictionary *jsonData = [NSJSONSerialization JSONObjectWithData:urlData options:kNilOptions error:&error];
NSInteger success = [(NSNumber *) [jsonData objectForKey:@"success"] integerValue];
if(success == 1)
{
if (self.lugares != nil) {
self.lugares = nil;
}
self.lugares = [[NSMutableArray alloc] initWithArray:[jsonData objectForKey:@"lugares"]];
}
else
{
NSLog(@"no hay datos :C");
}
}
else
{
NSLog(@"No encontrado");
}
Wechseln Sie zu NSURLSession.
Warum sind Sie Drop-Unterstützung für iOS 8 bereits?
möglich, Duplikat der NSURLSession/NSURLConnection HTTP laden fehlgeschlagen iOS 9
dieser link stackoverflow.com/questions/30739473/... mein problem behoben, danke Jungs!
Warum sind Sie Drop-Unterstützung für iOS 8 bereits?
möglich, Duplikat der NSURLSession/NSURLConnection HTTP laden fehlgeschlagen iOS 9
dieser link stackoverflow.com/questions/30739473/... mein problem behoben, danke Jungs!
InformationsquelleAutor miguelamgo | 2015-09-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ihre eigentliche problem ist nicht NSURLConnection Nutzung ios9 wird es handhaben, auch wenn es depricated auch hier das problem mit http-Anforderung Verwendung von ios9 apple rät von der Verwendung von HTTP-Anforderung, die als Teil der App-Transport-Security (ATS)
Von Apple-Dokumentation:
Umgehen kann man dies, indem Sie diese Taste, um Ihre
info.plist
des Projektsstack-overflow-link und blog-Referenz-link
ios9 ATS
InformationsquelleAutor Anshad Rasheed
Veraltet bedeutet nicht, dass etwas nicht funktioniert.
NSURLConnection arbeitet immer noch in iOS9.
Ihr problem ist Sie HTTP verwenden, in iOS9 Sie sollen für die Verwendung von HTTPS. Umschalten auf HTTPS (empfohlen) oder deaktivieren ATS.
ATS == Apfel-Transport-Sicherheit.
Wahr, und es war ein Tippfehler es war also incorret. Ich war einfach nur mit meinem Kommentar. Danke für den Fang.
InformationsquelleAutor Gruntcakes