0

我已经实现了 Apple Watch 应用程序以独立运行,因此所有 Web 服务都是在 Watch 本身中创建的。它似乎在 watch OS 2 中运行良好,但是当在 watch OS 3 中发出请求时,状态码为 401。

流程将是: 1. 在 iPhone 中获取详细信息 Web 服务请求后进行登录,并将登录详细信息共享到手表应用程序以在手表操作系统中发起相同的请求。

Watch OS 1 和 2.x - 没有问题 Watch OS 3 - 登录请求获得成功,获取详细信息服务调用时出现 401 错误。请注意:Watch OS 2 和 3 没有代码更改,后端也没有处理会话管理。

任何机构面临同样的问题或任何解决方案?.

4

1 回答 1

2

终于得到了解决方案,在添加以下几行后它对我有用。

 if let httpResponse = response as? HTTPURLResponse, let fields = httpResponse.allHeaderFields as? [String : String] {
                    let cookies = HTTPCookie.cookies(withResponseHeaderFields: fields, for: response!.url!)
                    HTTPCookieStorage.shared.setCookies(cookies, for: response!.url!, mainDocumentURL: nil)
                }

我假设 Watch OS2 默认管理 cookie,但 Watch OS3 不管理。所以我们似乎必须手动存储cookie。

于 2017-01-20T03:30:02.983 回答