目标 c 发送 cookie 到 uiwebview

objective c send cookies to uiwebview(目标 c 发送 cookie 到 uiwebview)
本文介绍了目标 c 发送 cookie 到 uiwebview的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要发送 cookie 以登录 UIWebView,但是当我加载网页时,cookie 尚未发送.

I need to send cookies for login to a UIWebView, but when I load the web page the cookies haven't been sent.

我的代码是:

CorreoViewController.m

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.title =AMLocalizedString(@"Correo", @"");
    NSURL *url=[NSURL URLWithString:@"https://cuentas.uv.es/cgi-bin/p/user/Usuario"];
    NSMutableURLRequest *request=[NSMutableURLRequest requestWithURL:url];

    NSArray * cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies];
    NSDictionary * headers = [NSHTTPCookie requestHeaderFieldsWithCookies: cookies];

    [request setHTTPMethod:@"Post"];
    [request setHTTPShouldHandleCookies:YES];
    [request setAllHTTPHeaderFields:headers];

    NSLog(@"Request: %@", [[request allHTTPHeaderFields] objectForKey:@"cookie"]);

    [self.webView loadRequest:request];
    // Do any additional setup after loading the view.
}

我的 cookie 存储中的 cookie 是:

And the cookies I have in my cookie storage are:

COOKIE 0:NSHTTPCookie 版本:0 名称:PAPIAuthNcook"值:nBNqHJSdjgo1aBw0uGh3AXzELIHCxA%2FDbnipSHWZbU5Eh1cJfUr18GEP9zxB%2Bl%2FZGPBAKQu6oF2l%0AzIMt7ywiSECLBuOHJnvS7y6rVim2HfE%3D%0A"expiresDate:(null) 创建时间:2014-01-16 15:05:41 +0000 (4.11578e+08)sessionOnly:TRUE domain:"cuentas.uv.es" path:"/" isSecure:FALSE

COOKIE 0: NSHTTPCookie version:0 name:"PAPIAuthNcook" value:"nBNqHJSdjgo1aBw0uGh3AXzElIHCxA%2FDbnipSHWZbU5Eh1cJfUr18GEP9zxB%2Bl%2FZGPBAKQu6oF2l%0AzIMt7ywiSECLBuOHJnvS7y6rVim2HfE%3D%0A" expiresDate:(null) created:2014-01-16 15:05:41 +0000 (4.11578e+08) sessionOnly:TRUE domain:"cuentas.uv.es" path:"/" isSecure:FALSE

COOKIE 1:NSHTTPCookie 版本:0 名称:PAPIslist"value:"17201128679244079|https://uvapp.uv.es/" expiresDate:(null)创建时间:2014-01-16 15:05:41 +0000 (4.11578e+08) sessionOnly:TRUEdomain:"cuentas.uv.es" path:"/" isSecure:FALSE

COOKIE 1: NSHTTPCookie version:0 name:"PAPIslist" value:"17201128679244079|https://uvapp.uv.es/" expiresDate:(null) created:2014-01-16 15:05:41 +0000 (4.11578e+08) sessionOnly:TRUE domain:"cuentas.uv.es" path:"/" isSecure:FALSE

COOKIE 2:NSHTTPCookie 版本:0 名称:PAPIAuthNcook"值:nBNqHJSdjgo1aBw0uGh3AXzELIHCxA%2FDbnipSHWZbU5Eh1cJfUr18GEP9zxB%2Bl%2FZGPBAKQu6oF2l%0AzIMt7ywiSECLBuOHJnvS7y6rVim2HfE%3D%0A"expiresDate:(null) 创建时间:2014-01-16 15:05:41 +0000 (4.11578e+08)sessionOnly:TRUE domain:"as.uv.es" path:"/" isSecure:FALSE

COOKIE 2: NSHTTPCookie version:0 name:"PAPIAuthNcook" value:"nBNqHJSdjgo1aBw0uGh3AXzElIHCxA%2FDbnipSHWZbU5Eh1cJfUr18GEP9zxB%2Bl%2FZGPBAKQu6oF2l%0AzIMt7ywiSECLBuOHJnvS7y6rVim2HfE%3D%0A" expiresDate:(null) created:2014-01-16 15:05:41 +0000 (4.11578e+08) sessionOnly:TRUE domain:"as.uv.es" path:"/" isSecure:FALSE

COOKIE 3:NSHTTPCookie 版本:0 名称:PAPIslist"value:"17201128679244079|https://uvapp.uv.es/" expiresDate:(null)创建时间:2014-01-16 15:05:41 +0000 (4.11578e+08) sessionOnly:TRUE域:as.uv.es" 路径:/" isSecure:FALSE

COOKIE 3: NSHTTPCookie version:0 name:"PAPIslist" value:"17201128679244079|https://uvapp.uv.es/" expiresDate:(null) created:2014-01-16 15:05:41 +0000 (4.11578e+08) sessionOnly:TRUE domain:"as.uv.es" path:"/" isSecure:FALSE

AppDelegate.m

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
    [[NSHTTPCookieStorage sharedHTTPCookieStorage]setCookieAcceptPolicy:NSHTTPCookieAcceptPolicyAlways];
}

提前谢谢你.

推荐答案

评论此行:

 NSArray * cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies];
    NSDictionary * headers = [NSHTTPCookie requestHeaderFieldsWithCookies: cookies];
[request setAllHTTPHeaderFields:headers];

cookies 是自动发送的.我希望这会对您有所帮助.

the cookies are sent automatically. I hope this will serve you.

这篇关于目标 c 发送 cookie 到 uiwebview的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Why local notification is not firing for UNCalendarNotificationTrigger(为什么没有为UNCalendarNotificationTrigger触发本地通知)
iOS VoiceOver functionality changes with Bundle Identifier(IOS画外音功能随捆绑包标识符而变化)
tabbar middle tab out of tabbar corner(选项卡栏中间的选项卡角外)
Pushing UIViewController above UITabBar(将UIView控制器推送到UITabBar上方)
How can I sync two flatList scroll position in react native(如何在本机Reaction中同步两个平面列表滚动位置)
Get an event when UIBarButtonItem menu is displayed(显示UIBarButtonItem菜单时获取事件)