1
我正在做一个iPhone应用程序,其中我使用登录过程的网站OAuth apis登录,并且uiwebview中的状态始终保持为已记录状态。我认为清除uiwebview中的cookie会帮助我注销。我想要一个注销选项说每个应用程序。我已经完成了这个工作来清除uiwebview中的所有cookie。在webview中通过JavaScript清理cookie-iphone
1)我已创建一个的script.js并将其加入到具有下面的代码
function deleteAllCookies() {
var cookies = document.cookie.split(";");
for (var i = 0; i < cookies.length; i++) {
var cookie = cookies[i];
var eqPos = cookie.indexOf("=");
var name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie;
document.cookie = name + "=;expires=Thu, 01 Jan 1970 00:00:00 GMT";
}
}
2)我已经在其中有一个注销按钮视图控制器之一加入此代码项目中。点击按钮后,此代码被执行
- (void)injectJavascript:(NSString *)resource {
NSString *jsPath = [[NSBundle mainBundle] pathForResource:resource ofType:@"js"];
NSString *js = [NSString stringWithContentsOfFile:jsPath encoding:NSUTF8StringEncoding error:NULL];
[webView stringByEvaluatingJavaScriptFromString:js];
}
-(void)logoutFromApp
{
[self injectJavascript:@"script"];
}
首先我甚至不确定这段代码是否正常工作。我怎么知道它是否已经清除了所有的cookies。?意思是,我将如何通知它已成功清除或不清除?
正在做什么是做这件事的最好方法,或者是否有任何其他方法来提供注销选项?
+1,它可以帮助我太多谢谢... – ChenSmile 2014-02-04 10:55:27
我很高兴它帮助:-) – 2014-02-05 07:21:54
我只有6个月的exp。希望你有很好的exp ...真的很感谢你的工作 – ChenSmile 2014-02-05 09:02:25