美文网首页iOS
cookies 获取、添加、删除相关 - iOS

cookies 获取、添加、删除相关 - iOS

作者: survivorsfyh | 来源:发表于2019-08-29 17:58 被阅读0次

    与前端交互的时候难免会遇到 cookies 方面的处理操作;
    如下便是针对 cookies 的一些简单的操作,具体 code 如下:

    // 查询 cookies
    NSArray *cookieArr = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL:[NSURL URLWithString:urlLink]];
    for (NSHTTPCookie *cookie in cookieArr) {
            NSLog(@"cookie -> %@", cookie);
            // 添加
            [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];
            
            // web 注入    
            [javaScript appendString:[NSString stringWithFormat:@"document.cookie = '%@=%@';", cookie.name, cookie.value]];
    
            // 删除
            [[NSHTTPCookieStorage sharedHTTPCookieStorage] deleteCookie:cookie];
    }
    
    /**
     获取 cookies
    
     @param url 接口地址
     @return    结果集
     */
    + (NSArray *)YHGetCookiesWithURL:(NSString *)url {
        NSArray *cookiesArr = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL:[NSURL URLWithString:url]];
        
        if (cookiesArr != nil) {
            for (NSHTTPCookie *cookie in cookiesArr) {
                NSLog(@"%@", cookie);
                
                [[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookie:cookie];
            }
        }
        
        return cookiesArr;
    }
    
    /**
     移除 cookies
     
     @param url 接口地址
     */
    + (void)YHRemoveCookiesWithURL:(NSString *)url {
        NSArray *cookiesArr = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL:[NSURL URLWithString:url]];
    
        if (cookiesArr != nil) {
            for (NSHTTPCookie *cookie in cookiesArr) {
                NSLog(@"%@", cookie);
                
                [[NSHTTPCookieStorage sharedHTTPCookieStorage] deleteCookie:cookie];
            }
        }
    }
    

    注:经测试默认发起 http 请求的时候,cookies 默认会注入,无需再次手动注入;但通过模拟器此方法是不可行的,建议使用真机环境下进行调试。


    以上便是此次分享的内容,希望对大家有所帮助!

    相关文章

      网友评论

        本文标题:cookies 获取、添加、删除相关 - iOS

        本文链接:https://www.haomeiwen.com/subject/hmhwectx.html