Swift-如何在NSMutableURLRequest中设置cookie [英] Swift - How to set cookie in NSMutableURLRequest

查看:424
本文介绍了Swift-如何在NSMutableURLRequest中设置cookie的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在HTTP请求中设置cookie 而且我认为下面的代码会起作用:

I'm trying to set cookie in my HTTP request and I thought that below code would work:

let request  = NSMutableURLRequest(URL: url)
request.HTTPMethod = "GET"
request.setValue("key=value;", forHTTPHeaderField: "Cookie")

,但是此代码不起作用. 有谁知道如何设置?

but this code is not working. does anyone have idea how to set it?

推荐答案

更新的Swift 3答案

您要查看 HTTPCookieStorage .

// First
let jar = HTTPCookieStorage.shared
let cookieHeaderField = ["Set-Cookie": "key=value"] // Or ["Set-Cookie": "key=value, key2=value2"] for multiple cookies
let cookies = HTTPCookie.cookies(withResponseHeaderFields: cookieHeaderField, for: url)
jar.setCookies(cookies, for: url, mainDocumentURL: url)

// Then
var request = URLRequest(url: url)


快速答案2的原始答案

您要查看 NSHTTPCookieStorage .

// First
let jar = NSHTTPCookieStorage.sharedHTTPCookieStorage()
let cookieHeaderField = ["Set-Cookie": "key=value"] // Or ["Set-Cookie": "key=value, key2=value2"] for multiple cookies
let cookies = NSHTTPCookie.cookiesWithResponseHeaderFields(cookieHeaderField, forURL: url)
jar.setCookies(cookies, forURL: url, mainDocumentURL: url)

// Then
let request  = NSMutableURLRequest(URL: url)

这篇关于Swift-如何在NSMutableURLRequest中设置cookie的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆