Skip to content

Commit 64d2527

Browse files
committed
Added passing cookies from long polling session to web scoket
1 parent d07441e commit 64d2527

File tree

2 files changed

+10
-5
lines changed

2 files changed

+10
-5
lines changed

Source/SocketIO/Engine/SocketEngine.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,7 @@ open class SocketEngine : NSObject, URLSessionDelegate, SocketEnginePollable, So
281281
private func createWebSocketAndConnect() {
282282
var req = URLRequest(url: urlWebSocketWithSid)
283283

284-
addHeaders(to: &req)
284+
addHeaders(to: &req, includingCookies: session?.configuration.httpCookieStorage?.cookies)
285285

286286
ws = WebSocket(request: req)
287287
ws?.callbackQueue = engineQueue

Source/SocketIO/Engine/SocketEngineSpec.swift

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -155,11 +155,16 @@ extension SocketEngineSpec {
155155
return com.url!
156156
}
157157

158-
func addHeaders(to req: inout URLRequest) {
159-
if let cookies = cookies {
160-
req.allHTTPHeaderFields = HTTPCookie.requestHeaderFields(with: cookies)
158+
func addHeaders(to req: inout URLRequest, includingCookies additionalCookies: [HTTPCookie]? = nil) {
159+
160+
var cookiesToAdd = [HTTPCookie]()
161+
cookiesToAdd += cookies ?? []
162+
cookiesToAdd += additionalCookies ?? []
163+
164+
if !cookiesToAdd.isEmpty {
165+
req.allHTTPHeaderFields = HTTPCookie.requestHeaderFields(with: cookiesToAdd)
161166
}
162-
167+
163168
if let extraHeaders = extraHeaders {
164169
for (headerName, value) in extraHeaders {
165170
req.setValue(value, forHTTPHeaderField: headerName)

0 commit comments

Comments
 (0)