iOS Alamofire : read cookie before autoredirect

标签 ios swift alamofire

我有一个 POST 方法,成功后会将我重定向到另一个页面。结果在最终目的地我没有设置 Cookie。如何从第一次响应中检索 cookie? (Alamofire 会自动重定向)

Alamofire.request( NSLocalizedString("url_login", comment: ""), method: .post, parameters: params).response{ response in          
          if let headerFields = response.response?.allHeaderFields as? [String: String],
           let URL = response.request?.url
            {
                let cookies = HTTPCookie.cookies(withResponseHeaderFields: headerFields, for: URL)
                print(cookies)
            }
            if response.response?.statusCode == 200 {
               /.../
                }else{
                    /..../
                }
            }

最佳答案

只需禁用重定向并读取结果。 像这样:

delegate.taskWillPerformHTTPRedirection = { _, _, _, _ 在 返回零 }

https://github.com/Alamofire/Alamofire/blob/491cf2f2557379d212eca2ed3e62f01a50c8c1b4/Tests/SessionDelegateTests.swift

关于iOS Alamofire : read cookie before autoredirect,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49499386/

相关文章:

ios - 在 NSTimer 触发之前调用一个函数

sql - 在 Swift 中,使用带有撇号的 SQL 查询

ios - 我可以快速制作一个文本有多种颜色的按钮吗?

swift - Realm :如何查询存储在数组中的属性?

ios - 使用 Alamofire 进行基本身份验证

ios - 在没有 VOIP 的情况下使 iOS 套接字在后台模式下保持事件状态

ios - 创建一个实现特定协议(protocol)的对象数组

ios - 具有 CurrentValueSubject 绑定(bind)的 TextField 上的 "Binding<String> action tried to update multiple times per frame"

arrays - 在 Alamofire 中发布参数

iOS - 带摘要的网络调用