您的位置:首页 > 移动开发 > IOS开发

iOS端连接H5页面的时候手动增加Cookie的值

2017-03-16 18:05 302 查看
今天公司想要在所有iOS掉H5的页面里的请求头的Cookie增加一个token字段

因为我们公司有H5端,也有iOS端,当iOS端跳进H5端的时候,此时iOS端登录了,而H5端不能直接登录,这样就会造成用户困扰,即需要用户进行双登录,用户体验极为不好。因此我们准备在iOS端对H5的请求头的Cookie中加入token字段就能解决这个问题。

在加载web view的地方:

// 加载URL

NSURL *url = [NSURL URLWithString:@"https://mtj.baidu.com/web/welcome/login"];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url];


//获取Cookie管理单例

NSHTTPCookieStorage *sharedHTTPCookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];


//获取Cookie内的字段数组

NSMutableArray *cookies = (NSMutableArray *)[sharedHTTPCookieStorage cookiesForURL:[NSURL URLWithString:@"https://mtj.baidu.com/web/welcome/login"]];


//获取原Cookie内的字段

NSString *cookieStr = @"";
for (NSHTTPCookie *cookie in cookies) {
NSString *cookieString = [NSString stringWithFormat:@"%@=%@", [cookie name], [cookie value]];
cookieStr = [cookieStr stringByAppendingString:@" "];
cookieStr = [cookieStr stringByAppendingString:cookieString];
}


//添加需要增加的Cookie字段

NSString *addCookie = [NSString stringWithFormat:@"%@=%@",@"token",@"测试一下"];
cookieStr = [NSString stringWithFormat:@"%@ %@",cookieStr,addCookie];

[request setValue:cookieStr forHTTPHeaderField:@"Cookie"];

[_webView loadRequest:request];


然后再抓包看看Cookie是不是已经改变了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cookie 用户体验 ios url