Tag: nsurlconnection

使用sendAsynchronousRequest:queue:completionHandler:用于URL请求

我正在开发另一个开发人员创build的iOS应用程序的更新。 他使用ASIHTTPRequest处理http请求。 但是,我的应用程序版本必须与崩溃。 由于ASIHTTPRequest不再被更新,所以我认为我应该改用AFNetworking,但对于我来说这太复杂了。 所以最后我以为我可以自己使用NSURLConnection。 这是我想要replace的原始代码: -(NSArray*)readUTF16LEFeed:(NSURL*) urlToRead{ ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:urlToRead]; [request startSynchronous]; NSError *error = [request error]; if (!error) { lastModified = [NSDate date]; NSData *response = [request responseData];//UTF-16LE NSString* responseString = [[NSString alloc] initWithData:response encoding:NSUTF16LittleEndianStringEncoding]; DLog(@"string is: %@",responseString); responseString = [responseString stringByReplacingOccurrencesOfString:@"ISO-8859-1" withString:@"UTF16-LE"]; NSData* data = [responseString dataUsingEncoding:NSUTF16LittleEndianStringEncoding]; return [self parseNamesFromXML:data]; […]

networking连接丢失NSURLConnection

每次尝试连接时都会打印此错误。 不知道为什么它不能连接到服务器。 build立一个简单的Java应用程序,它工作正常。 我一直在浏览StackOverflow几天试图找出。 尝试了多个API和一些不正确的东西。 如果你需要更多的代码,或有任何进一步的问题让我知道。 请帮忙。 🙁 2013-08-29 21:56:55.946 panic [15054:70b]错误域= NSURLErrorDomain代码= -1005“networking连接丢失。 UserInfo = 0xa779a30 {NSErrorFailingURLStringKey = http://54.221.224.251/ = http://54.221.224.251/ =networking连接丢失,NSUnderlyingError = 0xa611130“networking连接丢失。”} 这是我设置请求的代码: NSString *urlPath = [NSString stringWithFormat:@"http://54.221.224.251"]; [urlPath stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; NSURL *url = [NSURL URLWithString:urlPath]; NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url]; NSString *stringdata = [NSString stringWithFormat:@"name=%@&email=%@&phash=%@",name,email,phash]; NSString *postData = [[NSString alloc] initWithString:stringdata]; [postData […]

NSURLConnection不会跨多个视图调用完成

今天早些时候,我问了以下问题: 推送视图时,iOS块被阻止 我提到的操作(OP1)实际上是使用NSURLConnection到我的服务器的“http get”。 经过更多调查,我发现这个街区并没有真正的“死亡”。 真正发生的是,即使在推送视图(通过[NSThread sleep:10]validation)之后,请求实际上是SENT(服务器端logging它)。 服务器响应,但没有任何事情发生在应用程序端,如果view2已被推动! 就好像连接失去了代表一样! 我看到的另一个可能性是“NSURLConnection与rsMainLoop相关的事实? 谁能帮忙? 请不要忘记: 0.只要视图2没有被推到操作完成,一切都可以正常工作。 1.请求被发送asynchronous 2.我设置委托,只要视图不改变,它就会工作 3.视图1使用“单独对象引用”属性“OP1Completed”开始操作 4.视图2通过“单体对象引用”上的属性检查OP1的完成情况, 5.视图2通过转到“singleton.OP1Result”属性获取“结果” 编辑1: 好吧,让我们有一些代码。 首先这里是我的单身人士(名为“交互”)的相关代码: -(void)loadAllContextsForUser:(NSString *)username{ userNameAux = username; _loadingContextsCompleted = NO; if (contextsLoaderQueue == NULL) { contextsLoaderQueue = dispatch_queue_create("contextsLoaderQueue", NULL); } dispatch_async(contextsLoaderQueue, ^{ NSLog(@"Loading all contexts block started"); [self requestConnectivity]; dispatch_async(dispatch_get_main_queue(), ^{ [Util Get:[NSString stringWithFormat:@"%@/userContext?username=%@", Util.azureBaseUrl, [username […]

由于不可信证书,无法通过HTTPS接收JSON请求

现在我一直在使用这个问题几个小时,我似乎无法find一个解决scheme。 我遵循的最后一个教程是本教程,解释了如何通过不可信的SSL连接发送JSON请求(本例中为自签名证书)。 总之,我迄今为止所尝试的代码是这样的: 此方法检查令牌是否对我的Web API有效: -(BOOL)linked { if([self token] == nil) { return NO; }else { NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"%@?token=%@&object=User&action=check_authorized", SPAtajosApiLink, [self token], nil]]; NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:url]; [req setHTTPMethod:@"POST"]; NSLog(@"%@", req); [req setHTTPBody: [mandatoryParameters dataUsingEncoding: NSUTF8StringEncoding]]; NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:req delegate:self]; [connection start]; NSDictionary *validity = [NSJSONSerialization JSONObjectWithData:[NSURLConnection sendSynchronousRequest:req […]

NSOperationQueue与同步的NSURLConnection

在前面的问题的基础上:我有一个NSOperationQueue ,看起来像这样: NSBlockOperation *block1 = [NSBlockOperation blockOperationWithBlock:^{ [someObject someSelector]; }]; NSBlockOperation *block2= [NSBlockOperation blockOperationWithBlock:^{ [someObject anotherSelector]; }]; [block2 addDependency:block1]; [queue addOperation:block1]; [queue addOperation:block2]; 现在,在someSelector我有: returnData = [requesterObj getDataWithURL:(NSString*)url]; getDataWithURL包含如下所示的内容: NSURL *requestUrl = [NSURL URLWithString:strUrl]; NSMutableURLRequest *request = [NSMutableURLRequest requestUrl cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:timeout]; NSError *requestError; NSURLResponse *urlResponse = nil; NSData *urlData = [NSURLConnection sendSynchronousRequest:request returningResponse:&urlResponse error:&requestError]; 现在,当我添加断点时,看起来第二个块在第一个块的NSURLConnection完成之前被调用。 […]

调用HTTPS Soap服务时出现NSURLConnection错误

我试图从Soap请求获取数据,但得到我的应用程序崩溃与此错误: 2016-02-08 11:12:11.524 Example[567:128898] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9843) Response: nil fatal error: unexpectedly found nil while unwrapping an Optional value 我在plist中启用了安全设置,并成功调用其他服务。 注:该服务是在HTTPS上,我得到这个错误,因为这个? 这是否需要任何证书? 我第一次打电话给肥皂服务,也请指导我如何在服务中添加电子邮件参数:( https:// [IP]:9897 / JLIPolicyinfo.asmx?op = GetEmail_Poldetail ) 这里是我从这里得到的代码:( 使用SOAP的IOS Swift调用Web服务 ) let is_SoapMessage: String = "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:cgs=\"http://www.cgsapi.com/\"><soapenv:Header/><soapenv:Body><cgs:GetSystemStatus/></soapenv:Body></soapenv:Envelope>" let is_URL: String = "https://58.27.241.203:9897/JLIPolicyinfo.asmx" let lobj_Request = NSMutableURLRequest(URL: NSURL(string: is_URL)!) […]

发布后在connectionDidFinishLoading:,NSURLConnection委托方法内不能收到通知

我无法收到通知: 一个类NSURLConnectionasynchronous的东西 – (void)connectionDidFinishLoading:(NSURLConnection *)connection { NSDictionary *userInfo = [NSDictionary dictionaryWithObjectsAndKeys:_receivedData, @"receivedData", nil]; [[NSNotificationCenter defaultCenter] postNotificationName:kWebServiceURLTemperaturaMaximaKMLNotitificationName object:self userInfo:userInfo]; } 另一个class级观察通知: [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(didReceivedCompleteData:) name:kWebServiceURLTemperaturaMaximaKMLNotitificationName object:self]; 有什么想法吗?

调用connectionDidFinishLoading之后更新View Controller

我正在尝试asynchronous加载网页内容。 一旦调用了connectionDidFinishLoading方法,我不知道如何更新视图控制器中的标签/其他内容。 在下面的示例中,我只是试图更新标签以显示内容已经加载。 我将如何做到这一点? 谢谢! – (void)connectionDidFinishLoading:(NSURLConnection *)connection { NSLog(@"Succeeded! Received %d bytes of data",[responseData length]); NSString *txt = [[NSString alloc] initWithData:responseData encoding: NSASCIIStringEncoding]; label.text = @"DISPLAY THIS WHEN FINISHED"; } 我被告知让我的viewController成为NSURLConnectionDelegate,然后从viewDidLoad运行fetchData方法,然后在connectionDidFinishLoading中获取数据时使用获取数据的数据。 任何人都知道从哪里开始? 谢谢!

检查哪个请求来自NSURLConnection委托

什么是检查哪个请求是委托方法内的哪个最好的方法: – (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response { } 现在我有一个NSURLConnection,我做了一个NSURLConnection请求之前,并在didReceiveResponse我做的: if (self.tempConnection == connection) 但是有一个可能性,这不适用于比赛条件。 有一个更好的方法吗?

序列化NSURLConnection请求(iOS) – 使用同步请求?

我正在循环查看date列表,并向列表中的每个date的Web服务器发出请求。 我希望在将后续请求发送到服务器之前完全处理每个date。 为此,我build立了一个使用GCD的串行调度队列。 每次通过date循环时,一个块被添加到队列中。 我遇到的问题是我的NSURLConnection使用标准asynchronous调用进行设置。 这导致请求不会阻止任何后续请求。 他们因此超越对方。 我的问题:这是一个情况下,我有可能使用同步 NSURLConnection(在调度队列内)还是有一些其他方式使它使用标准asynchronous调用工作?