在应用程序和webview内的应用程序共享会话 - IOS的Swift
问题描述:
您好我有IOS应用程序在swift中写入登录,并在成功登录后,应用程序继续活动,有webView
。在应用程序和webview内的应用程序共享会话 - IOS的Swift
该应用程序和网站共享相同的api。登录的过程是,当我提供正确username
和password
API返回token
我所管理的应用程序登录正确使用Alamofire框架作为HTTP请求
Alamofire.request(.POST, url, parameters: param).responseJSON{ (request, response, JSONdata, error) in
if error != nil {
let result = ["Error" : "Unexpected Error!"]
callback(result: result)
} else {
if response?.statusCode == 401 {
println(401)
let result = ["Error" : "User not found!"]
callback(result: result)
} else if response?.statusCode == 200 {
let responseDict = JSONdata as! NSDictionary
callback(result:responseDict)
}
}
}
,这是我的web视图代码
显示let requestURL = NSURL(string: "myURL")
let request = NSMutableURLRequest(URL: requestURL!)
webView.loadRequest(request)
我需要在webview中显示它的网站,但我需要与webview共享会话,因为它们与应用程序共享相同的api。
任何人都可以帮助我吗?如何实现这一点。
答
如果您想将令牌作为主体传递给请求您可以按照以下方式进行操作。它位于Objective C中,将其转换为swift。
NSURL *url = [NSURL URLWithString: @"http://your_url.com"];
NSString *body = [NSString stringWithFormat: @"token=%@",varToken];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc]initWithURL: url];
[request setHTTPMethod: @"POST"];
[request setHTTPBody: [body dataUsingEncoding: NSUTF8StringEncoding]];
[webView loadRequest: request];
我只想让应用的用户已经登录到webview中,但我不知道如何。 – CaffeineShots