我试图实现一个MPMedia播放器来播放互联网文件。 到目前为止,我已经设法打开与我主持的video链接的媒体播放器。 当我尝试加载不直接映射到文件的url,而是将其redirect到文件时,问题就开始了。 初始url如下所示:h * tp://www.example.com/ numbers / numbers / numbers 当我把它放在我的浏览器中时,它会自动改变为这样的:h * tp://www.example.com/ numbers .mp4?to = numbers 当我直接使用初始URL时,就像我在直接使用url时一样,播放器出现,并且在不播放video的情况下中断播放。 我已经尝试NSURLConnection获得redirecturl,但我还没有能够得到它的工作,不知何故方法 – 连接:willSendRequest:redirectResponse:不会被调用。 我认为这可能是因为它已经在iOS 5中被删除了,但我不知道任何替代品,而这种问题实际上是没有logging的。 这里是我的代码:(我已经跳过shortUrl初始化,它的工作原理)。 NSLog(@"%@",shortUrl); redirecionando=TRUE; NSURLConnection * conection = [[NSURLConnection alloc]initWithRequest:[NSURLRequest requestWithURL:shortUrl] delegate:self]; [conection start]; while(self.redirecting); self.moviePlayerController = [[MPMoviePlayerViewController alloc] initWithContentURL:finalurl]; moviePlayerController.view.frame = self.view.bounds; [self presentMoviePlayerViewControllerAnimated:moviePlayerController]; moviePlayerController.moviePlayer.controlStyle = MPMovieControlStyleFullscreen; moviePlayerController.moviePlayer.shouldAutoplay = YES; [moviePlayerController.moviePlayer […]
我正在用Swift开发一个非常基础的iOS应用程序。 只是读取心率数据。 我正在使用SFSafariViewController。 众所周知,我首先需要在dev.fitbit.com上注册我的应用程序。 registry格需要input一个callbackURL。 成功login后,FitBit总是将我redirect到input的callbackURL。 我应该怎么做/代码/configuration成能够重新定向用户回到我的iOS应用程序login成功后?
我试图将我分别获得的会话cookie注入到WKWebview请求中,事实certificate这是相当痛苦的… 我设法使用这个解决scheme注入会话cookie,如下所示: // Acquiring the cookies let cookies = HTTPCookie.cookies(withResponseHeaderFields: headers, for: s.request!.url!) //Appending all the cookies into one raw string. var cookiesRawString = "" for c in cookies { cookiesRawString += "\(c.name)=\(c.value); " } var req: URLRequest = try! URLRequest(url: URL, method: method) // Then the injection itself request.setValue(cookiesRawString, forHTTPHeaderField: "Cookie") webView.load(req) 让我快速用伪码解释服务器逻辑: 服务器用附加的初始会话cookie接收对端点/端点1的呼叫 […]
在我看来,适当的地方这样做是在AFURLSessionManager中设置taskWillPerformHTTPRedirection块,但我不确定处理它的最佳方式。 目前,在我的AFHTTPSessionManager子类中,我为所有请求全局设置了redirect块,我知道我可以通过在这里返回nil来防止redirect: – (void)setupRedirectBlock { [self setTaskWillPerformHTTPRedirectionBlock:^NSURLRequest *(NSURLSession *session, NSURLSessionTask *task, NSURLResponse *response, NSURLRequest *request) { return nil; }]; } …但是我只需要在具体任务上做到这一点,似乎没有办法从任务本身获取这些信息。 我想我正在寻找某种用户信息字典或我可以用来设置一个标志告诉这个方法要么返回request或返回nil 。 目前,看起来我必须对远离实际创build任务和path的客户端的响应/请求URL进行string比较。 所以这就引出了一个问题,我是在和公约打交道,还是真的没有更好的方法来在任务的基础上截获AFNetworking 2.0redirect?
我有一个网站已经开发使用PHPFox ,它工作正常。 现在,iOS开发团队已经在iOS中创build了一个与网站function相同的移动应用程序。 用户可以使用他/她可以在网站上完成的所有操作。 换句话说,我们可以说这个应用程序是现有网站的副本。 应用程序开发的唯一限制是stream程和function应该与网站相同。 应用程序和现有正在运行的网站之间不应有任何function差异。 对于这个应用程序,他们正在使用与网站的PHPFox代码库相同的function。 我通过使用Slim框架开发的REST API来使iOS团队可以使用这些function。 在这些API中,我接受来自应用程序的JSON格式的请求,将其解码,通过传递所需的请求参数从PHPFox代码库调用所需的函数,从函数获取响应,将其转换为JSON格式并将其发回到移动应用程序。 现在,我们来关注一下我面临的问题。 在这两种场景(网站和应用程序)中,对于某些function,如新用户帐户激活链接,重新发送帐户激活链接,重置现有用户密码(如果他/她忘记密码等),则向相关用户发送电子邮件。 这封电子邮件包含相关超链接。 当用户点击发送到电子邮件的超链接时,它总是redirect到网站上的相应网页。 当特定用户点击收到的邮件中的超链接时,它只会被redirect到网站 。 它不会redirect到应用程序。 我的要求是,如果用户已经打开邮件到已安装/运行移动应用程序的设备上,并单击邮件中的超链接,他/她应该redirect到移动应用程序的特定页面而不是网站。 假设用户在计算机,笔记本电脑或未安装应用程序的设备上打开邮件,他/她应该redirect到该网站。 我应该如何做到这一点? 还有一点需要注意的是,要发送到邮件的链接的redirectpath( href属性的值)仅生成到网站的PHPFox代码中。 所以,如果我需要改变逻辑来实现这个新function,我应该怎么做,而不必改变应用程序和网站上的系统stream? 或者我应该为它写一个新的函数,以便不改变PHPFox的现有代码? 我研究了这个问题的解决scheme。 我来了解Bitly ,可以做这个工作,但不知道如何。 这个要求是由iOS团队在我们(PHP团队)基于他们在互联网上find的这个超链接文章提出的。 请参阅这也。 所以,我直截了当的问题是,因为这篇文章是关于iOS编码的,并且与服务器端编码(即PHP)没有任何关系,我必须在服务器端使用PHP来实现这个function。
我有一个久经考验的使用NSURLRequest(和伴奏)的实现,这对于GETs很有效,而POSTs则是给定的URL。 不过,我现在想移动URL的目标,而不更改应用程序使用的URL,所以我打算通过我的DNS提供商使用networkingredirect。 这对GET请求正常工作,但POST只是挂起…没有连接响应收到。 处理redirect的相关iOS方法是, -(NSURLRequest *)connection:(NSURLConnection *)connection willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)redirectResponse 根据苹果的文档( 处理redirect ), 如果委托没有实现连接:willSendRequest:redirectResponse :,所有规范的更改和服务器redirect都是允许的。 那么,这不是我的经验,因为离开这个方法不适合我。 请求只是挂起而没有回应。 苹果还build议实施willSendRequest(请参阅上面的链接苹果文档),这再也不适用于我。 我看到了调用,但结果请求只是挂起。 我目前的willSendRequest实现如下(见下文)。 这遵循redirect,但是将请求处理为GET,而不是POST。 我相信问题是redirect正在失去HTTP请求是一个POST的事实(可能还有更多的问题,比如向前移动请求Body?)。 我不确定我应该在这里做什么。 所以任何关于如何正确处理接收redirect的POST的build议将不胜感激。 谢谢。 -(NSURLRequest *)connection:(NSURLConnection *)connection willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)redirectResponse { NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse *) redirectResponse; int statusCode = [httpResponse statusCode]; NSLog (@"HTTP status %d", statusCode); // http statuscodes between 300 […]
可能重复: 是否有可能注册一个基于http +域名的iPhone应用程序的URL计划,如YouTube和地图? 我为iOS应用程序提供了一个自定义的URLscheme,我希望能够通过电子邮件将链接发送给某人,如果该应用程序在设备上,可以启动该应用程序,或者如果他们没有,则将其链接到应用程序商店。 我希望能够发送myapp:// someurl,并启动或去appappore myapp,但我不认为这可以开箱即用。 相反,我想创build一个加载一些JavaScript的链接,将尝试myapp:// someurl,如果失败将加载应用程序商店链接。 我的JavaScript知识是蹩脚的。 我可以设置window.location来执行redirect,但似乎没有办法从中捕获错误,以便在失败时执行另一个操作。 有人知道怎么做吗?
我有一个原生的iOS应用程序,可以通过myiosapp://从iOS移动Safari中调用。 我也有一个简单的Rails应用程序,当请求来自移动时,应该redirect到本地应用程序。 这是我的问题 – 我不能redirect_to 'myiosapp:// 我想尽可能简短地描述这个问题,所以我创build了一个示例应用程序来删除不相关的信息,但重复了同样的问题。 这是我的routes.rb: MyRailsApp::Application.routes.draw do root :to => 'redirect#index' end 这里是redirect_controller.rb: class RedirectController < ApplicationController def index if request_from_mobile? redirect_to "myiosapp://" else redirect_to "/default.html" end end private def request_from_mobile? request.user_agent =~ /Mobile|webOS/ end end 每当我运行rails server并去localhost::3000 ,我得到这个: Started GET "/" for 127.0.0.1 at 2012-09-21 14:00:52 +0800 Processing by RedirectController#index as […]
我知道可以通过注册一个自定义scheme(例如://)直接链接到iOS的应用程序,也可以通过iTunes链接到应用程序中的应用程序。 在很多情况下,理想的stream程是提供一个链接, 如果已安装, 则redirect到应用程序, 否则将链接redirect到应用程序。 这是可能的,如果是这样,怎么样? 为了清楚起见 ,这个场景是我打开一个链接(http)从我的iphone上的电子邮件邀请我join一个应用程序组。 如果用户在该设备上安装了应用程序,则应该打开该应用程序,否则http链接应该redirect到iTunes。