【问题标题】:How get value of headers in request (URLSession.shared.dataTask(with: request) { (data, response, error)如何获取请求中标头的值 (URLSession.shared.dataTask(with: request) { (data, response, error)
【发布时间】:2019-03-16 09:27:08
【问题描述】:

我需要获取标头“Set-Cookie”的值 - sessid = EZEaqDixCNZKjY4HwEXSjuR8lKhqkHXGLX6SoZSmtdUegKP7AkUuFOpUIHygf3M5

现在我可以获得所有字符串,但我只需要 sessid 的值 - EZEaqDixCNZKjY4HwEXSjuR8lKhqkHXGLX6SoZSmtdUegKP7AkUuFOpUIHygf3M5

我如何解析这个字符串或给我建议如何获取这个属性。

【问题讨论】:

标签: ios swift httpresponse nsurlsession


【解决方案1】:
"sessid=EZEaqDixCNZKjY4HwEXSjuR8lKhqkHXGLX6SoZSmtdUegKP7AkUuFOpUIHygf3M5;".replacingOccurrences(of: "sessid=", with: "").dropLast()
// Result: EZEaqDixCNZKjY4HwEXSjuR8lKhqkHXGLX6SoZSmtdUegKP7AkUuFOpUIHygf3M5

首先我们删除"sessid=",然后删除分号。

【讨论】:

  • 所有字符串看起来像这样sessid=ETLqmdsPiBEfjw008XxEZNUvLpNif6sNC7ABF3jmepfduzhRPljzszx20af8PJtn; path=/, CurrentCulture=ru; path=/
  • "sessid=ETLqmdsPiBEfjw008XxEZNUvLpNif6sNC7ABF3jmepfduzhRPljzszx20af8PJtn; path=/, CurrentCulture=ru; path=/".split(separator: ";").first?.replacingOccurrences(of: "sessid=", with: "") 又增加了一步 - 用分号分割字符串,不再需要删除最后一个字符
  • 它解决了我的问题,但也许有一种方法可以解析标题作为响应?无论如何谢谢你
  • 如果您询问来自Foundation 框架的标头解析方法,那么我相信没有。解析标头值是用户的责任。
猜你喜欢
  • 2011-09-14
  • 1970-01-01
  • 2015-11-26
  • 2018-02-28
  • 2012-01-25
  • 2014-10-20
  • 2018-02-27
  • 2018-12-18
  • 1970-01-01
相关资源
最近更新 更多