Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在iOS Swift的UIWebView中启用Cookie_Ios_Swift_Cookies_Oauth_Uiwebview - Fatal编程技术网

如何在iOS Swift的UIWebView中启用Cookie

如何在iOS Swift的UIWebView中启用Cookie,ios,swift,cookies,oauth,uiwebview,Ios,Swift,Cookies,Oauth,Uiwebview,我有一个应用程序使用Instagram集成。该应用已经在应用商店中运行了几个月,多个版本都运行良好。突然,我提交给苹果的最新版本被拒绝了,因为苹果不喜欢Safari是为用户登录Instagram而发布的。正如他们所说,他们关心用户体验 问题是我需要请求一个访问令牌,这就是我知道必须这样做的原因。因为我的应用程序被拒绝了,所以我不可能是唯一一个面对这个问题的人,所以我想我应该问一下。有人知道其他方法吗?也许我不知道,通过这种方法,您可以在不启动Safari的情况下对用户Instagram进行身份验

我有一个应用程序使用Instagram集成。该应用已经在应用商店中运行了几个月,多个版本都运行良好。突然,我提交给苹果的最新版本被拒绝了,因为苹果不喜欢Safari是为用户登录Instagram而发布的。正如他们所说,他们关心用户体验

问题是我需要请求一个访问令牌,这就是我知道必须这样做的原因。因为我的应用程序被拒绝了,所以我不可能是唯一一个面对这个问题的人,所以我想我应该问一下。有人知道其他方法吗?也许我不知道,通过这种方法,您可以在不启动Safari的情况下对用户Instagram进行身份验证并获得所需的访问令牌

编辑#1:我能想到的唯一其他选择是在我的应用程序中使用UIWebView打开Instagram身份验证过程。我试过了,但速度似乎太慢了,我的应用程序的回调过程似乎没有启动。所以我不知道我是否做错了什么


编辑#2:进一步研究Instagram登录在我的UIWebView中不起作用的原因,这似乎与UIWebView如何处理Cookie有关,显然它无法识别Cookie或类似的东西。我仍然不知道该怎么做才能解决这个问题,所以如果有人有解决方案,请提供。

看起来是可以帮助您的。你没有提供很多关于你的应用程序的信息,所以我想不出什么现成的东西,但是试着查看一下,看看当用户做了什么事情时,你是否可以使用它们来触发登录。

我相信这可以优化一点,我可能不需要for循环。但无论如何,我在这个问题上已经花了将近一天的时间,只是不想再碰它了,因为在加载UIWebView之前,我终于能够通过执行以下操作来实现这一点:

var req = NSURLRequest(URL: NSURL(string: urlString)!)
var cookies = NSHTTPCookieStorage.sharedHTTPCookieStorage().cookies as! [NSHTTPCookie]

var reqCookies:[AnyObject] = []

for aCookie in cookies {

    reqCookies += [aCookie]

}

var headers = NSHTTPCookie.requestHeaderFieldsWithCookies(reqCookies)

self.webView.loadRequest(req)

我已经在做了。这并不能真正回答这个问题。我的应用程序用户Instagram已经开始做各种各样的事情了。我想问的是如何验证用户身份并接收instagram所需的访问令牌。您在此处使用了哪些标题?