io uso il codice qui sotto per inviare un file al server:_kCFStreamErrorCodeKey = -2102 solo con wifi di alcuni ISP
NSString *urlString = [NSString stringWithFormat:@"%@%@",[LIUtility sharedUtility].uploadConnectionURL,BR_SERVER_UPLOAD_ADDRESS_FILE];
self.request =[[NSMutableURLRequest alloc] init];
[self.request setURL:[NSURL URLWithString:urlString]];
[self.request setHTTPMethod:@"POST"];
PKMultipartInputStream *body = [[PKMultipartInputStream alloc] init];
NSString *requestString =[self getRequestStringForRange:range andExtension:fileName];
NSData *requestData = [requestString dataUsingEncoding:NSUTF8StringEncoding];
NSString *jsonLengthString = [NSString stringWithFormat:@"%04lu",(unsigned long)requestData.length];
NSData *jsonLengthData = [jsonLengthString dataUsingEncoding:NSUTF8StringEncoding];
[body addPartWithName:@"jsonLength" data:jsonLengthData];
[body addPartWithName:@"json" data:requestData];
[body addPartWithName:@"separator" string:@"\r\n"];
[body addPartWithName:@"fileData" filename:fileName stream:dataStream streamLength:streamSize];
[self.request setHTTPBodyStream:body];
[self.request setTimeoutInterval:60];
NSString *contentType = LI_CONNECTION_CONTENTTYPE;
[self.request addValue:contentType forHTTPHeaderField: @"Content-Type"];
self.connection = [[NSURLConnection alloc] initWithRequest:self.request delegate:self];
_responseData = [NSMutableData data];
[self.connection start];
Il file viene caricato con il codice di 3G/4G.The funziona anche quando il dispositivo è collegato a wifi di alcuni ISP ADSL ma in alcuni altri ISP il codice non funzionano e ottengo sotto l'errore:
Error Domain=NSURLErrorDomain Code=-1001 "The request timed out." UserInfo={NSErrorFailingURLStringKey= http://example.net , _kCFStreamErrorCodeKey=-2102, NSErrorFailingURLKey=http:/example.net:80/au, NSLocalizedDescription=The request timed out., _kCFStreamErrorDomainKey=4, NSUnderlyingError=0x16a40410 {Error Domain=kCFErrorDomainCFNetwork Code=-1001 "The request timed out." UserInfo={_kCFStreamErrorCodeKey=-2102, NSErrorFailingURLStringKey= http://example.net , NSErrorFailingURLKey= http://example.net , NSLocalizedDescription=The request timed out., _kCFStreamErrorDomainKey=4}}}
qualcuno ha qualche idea su ciò che è il problema?
Questo ha funzionato anche per me. Non sono sicuro se questo è rilevante, ma per riferimento: Xcode 7.2 utilizzando Swift, iPad con iOS 9.2.1. Un nuovo Apple AirPort ha avuto il problema; uno più vecchio no. –