Tag: nsurlrequest

如何下载一个网页的内部资源,如图像,在iOS的CSS?

我试图下载指定的网页与他们的内部页面资源到磁盘。 当我发送一个NSURLRequest,只有最初的URL将是请求,但资源作为图像,CSS,JS不会被下载。 有人build议使用caching,但我不想caching在uiwebview浏览的每个网页,但只有我指定的网页。例如,当我input一个url到uiwebview地址栏然后点击“保存”button,该页面将被保存完整,但在web视图中的其他浏览将不会被自动caching。 有没有办法下载整个网页? 非常感谢你!

cachingWKWebView

我在自定义互联网浏览器遇到问题。 我正在使用WKWebView。 我在我的应用程序中有选项卡。 如果我点击一个标签,在WKWebView中加载新的NSURLRequest。 我需要实现一个caching。 如果用户按下一个标签,我宁愿加载caching数据而不是新的。 不幸的是,这段代码不起作用: NSURLRequest *request = [[NSURLRequest alloc] initWithURL:URL cachePolicy:NSURLRequestReturnCacheDataElseLoad timeoutInterval:0.0]; [self.webView loadRequest:request]; 你可以指导我如何实现cachingWKWebView?

XTubeManager在后台崩溃?

我在XTubeManager中遇到大量的崩溃(似乎是CFNetwork内部)。 不幸的是,控制台日志不可用,只有调用堆栈(见下文)。 问题: 我可以想象,我的应用程序在后台崩溃,因此没有控制台日志被写入,你认为这是一种可能性? 我必须以不同的方式处理backgroundTask过期,例如取消所有的NSURLRequests ? (见下面的代码) 背景 我经常在后台醒来(或通过后台推送)并运行如下所示的后台任务: NSString *myTaskName = @"some.random.task.name"; __block UIBackgroundTaskIdentifier taskID = [UIApplication.sharedApplication beginBackgroundTaskWithName:myTaskName expirationHandler:^{ [UIApplication.sharedApplication endBackgroundTask:taskID]; taskID = UIBackgroundTaskInvalid; }]; dispatch_queue_t q = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dispatch_async(q, // doing some NSURLRequests stuff here [UIApplication.sharedApplication endBackgroundTask:taskID]; taskID = UIBackgroundTaskInvalid; }); 这通常在applicationDidEnterBackground调用 调用堆栈 Thread : Crashed: com.apple.NSURLConnectionLoader 0 libobjc.A.dylib 0x183599b90 objc_msgSend + […]

更改用户代理并删除应用程序名称,并默认iOS

我试图在iOS中更改用户代理,但是当我添加自定义用户代理时,它会将其附加到包含我的应用程序名称的现有用户代理。 这是我正在使用的代码: NSMutableURLRequest *request = [client requestWithMethod:@"POST" path:endpoint parameters:nil]; [request addValue:@"MyUserAgent (iPhone; iOS 7.0.2; gzip)" forHTTPHeaderField:@"User-Agent"]; 用户代理显示如下: MyAppName/1.0 (iPhone; iOS 7.0.2; Scale/2.00),MyUserAgent (iPhone; iOS 7.0.2; gzip) 我读过,这可能是不可能的,因为应用程序的名称是自动添加到用户代理,但是我已经看到另一个类似的应用程序,我设法完全自定义用户代理。

如何在iOS中发送GEt请求到PHP

您好,我有发送GET请求到PHP的问题,相同的PHP在网页浏览器中运行时工作正常这里是PHP和Obj-C PHP的代码片段 $var1=$_GET['value1']; $var2=$_GET['value2']; 当我在浏览器中调用像http://sample.com/sample.php?value1=hi&value2=welcome它工作正常,但从obj ci不能成功obj C NSString *url =[NSString stringWithFormat:@"http://sample.com/sample.php"]; NSData *data = [@"sample.php" dataUsingEncoding:NSUTF8StringEncoding]; NSLog(@"%@",url); NSMutableURLRequest *req = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:url]]; [req setHTTPMethod:@"GET"]; [req setHTTPBody:data]; NSURLConnection *connection = [[[NSURLConnection alloc] initWithRequest:req delegate:self]autorelease]; [connection start]; 请帮忙?

在iOS中通过HTTP获取图像时不断增长的内存分配

我正在实现一个需要通过HTTP获取大量图像的iOS应用程序。 我已经尝试了几种方法,但独立我做什么,Instuments显示不断增加的内存分配和应用程序迟早崩溃,当我在设备上运行它。 仪器没有显示泄漏。 到目前为止,我已经尝试了以下几点: 在NSOperation中使用同步NSURLConnection获取图像 在NSOperation中使用asynchronousNSURLConnection获取图像 在主线程中使用[NSData dataWithContentsOfURL:url]获取图像 在NSOperation中使用同步ASIHTTPRequest获取图像 使用asynchronousASIHTTPRequest获取图像并将其添加到NSOperationQueue 使用asynchronousASIHTTPRequest并使用completionBlock获取图像 Instrumetns中的调用树显示内存在处理HTTP响应时被占用。 在asynchronousNSURLConnection的情况下, – (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data { [receivedData appendData:data]; } 在同步NSURLConnection的情况下,Instruments显示一个正在增长的CFData(存储)条目。 ASIHTTPRequest的问题似乎与在类似的代码位置的asynchronousNSURLConnection相同。 这个[NSData dataWithContentsOfURL:url]方法显示了在exactely那个语句中增加的总内存分配量。 当请求在一个单独的线程完成时,我正在使用一个NSAutoReleasePool,我试图用[[NSURLCache sharedURLCache] removeAllCachedResponses]释放内存 – 没有成功。 任何想法/提示解决问题? 谢谢。 编辑:行为只显示如果我坚持图像使用CoreData。 这里是我作为NSInvocationOperation运行的代码: -(void) _fetchAndSave:(NSString*) imageId { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; NSString *url = [NSString stringWithFormat:@"%@%@", kImageUrl, imageId]; HTTPResponse *response = […]

如何在JSONRequestOperation上将自定义标题添加到AFNetworking

嗨,我有以下代码访问一个URL: NSString * stringURL = [NSString stringWithFormat:@"%@/%@/someAPI", kSERVICE_URL, kSERVICE_VERSION]; NSURLRequest * request = [NSURLRequest requestWithURL:[NSURL URLWithString:stringURL]]; AFJSONRequestOperation * operation = [AFJSONRequestOperation JSONRequestOperationWithRequest:request success:^(NSURLRequest *request, NSHTTPURLResponse *response, id JSON) { completionHandler(JSON, nil); } failure:^(NSURLRequest *request, NSHTTPURLResponse *response, NSError *error, id JSON) { completionHandler(nil, error); }]; 但是我希望将用户标记作为HEADER上的parameter passing,如X-USER-TOKEN 。 不能在AFNetworking documentationfind它,我应该改变操作types?

IOS发送post方法数据可以在php中以get方式访问

我对iOS很新。 我正试图通过post方法将数据发送到PHP。 在PHP中,它不能像$_POST['data']这样$_POST['data'] ,但它需要$_GET['data'] 。 我的iOS代码如下。 NSString *strURL = [NSString stringWithFormat:@"http://example.com/app_respond_to_job?emp_id=%@&job_code=%@&status=Worker-Accepted&comment=%@",SaveID2,txtJobcode1,alertTextField.text]; NSURL *apiURL = [NSURL URLWithString:strURL]; NSMutableURLRequest *urlRequest = [NSMutableURLRequest requestWithURL:apiURL]; [urlRequest setHTTPMethod:@"POST"]; NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:urlRequest delegate:self]; _receivedData = [[NSMutableData alloc] init]; [connection start]; NSLog(@"URL—%@",strURL); 有人可以解释为什么,这将是非常有帮助的。

在执行下一条语句之前,如何等待NSURLConnection委托完成?

这是一个很难search。 我发现了一个类似的问题, iOS 5在填充表之前等待委托完成? ,但接受的答案是“刷新表视图”,这并没有帮助我。 我发现的其他结果往往是在C#中。 我有一个从iPhonestream到Wowza服务器的应用程序。 当用户点击logging时,我生成一个唯一的设备ID,然后将其发送到服务器上的PHP脚本,该脚本返回带有configuration设置(包括rtmp转储链接)的JSON文档。 问题是,委托方法是asynchronous的,但我需要在我的- (IBAction)recordButtonPressed方法的下一行代码之前获取configuration设置,因为代码是什么设置configuration文件设置,然后基于这些设置进行logging。 我已经意识到,我可以像现在一样在-recordButtonPressed创buildNSURLConnection ,然后在委托方法connectionDidFinishLoading (或者只是封装设置和方法从那里调用它) 内部继续安装代码,但是这会牺牲function的一致性devise,吮吸。 是否没有一些简单的waitUntilDelegateIsFinished:(BOOL)nonAsyncFlag标志我可以发送给委托,所以我可以从网上拉数据的顺序操作?

单击+ UIWebView =随机崩溃

我正在iOS 5.0 iPhone和iPad上使用最新的Mono / Monotouch / MonoDevelop稳定版本。 我有一个UIWebView在模拟器从不崩溃,但实际设备上崩溃EXC_BAD_ACCESS随机。 基于我用UIWebViews读取的所有内容,这些内容很可能在UIWebView在完成加载之前处理完毕。 这里是我在我的ViewDidLoad()中使用的代码: var urlAddress = BASE_URL + _page; var nsURL = new NSUrl(urlAddress); var nsURLRequest = new NSUrlRequest(nsURL); _webView.Tag = 10; _webView.ScalesPageToFit = true; _webView.AutosizesSubviews = true; _webView.LoadStarted += HandleWebViewLoadStarted; _webView.LoadFinished += HandleWebViewLoadFinished; _webView.LoadRequest(nsURLRequest); this.Add(_webView); 任何想法,为什么它会在实际的设备随机崩溃,但从来没有在模拟器?