From 3fda340ad1b82691124f588fa076fe00631462ff Mon Sep 17 00:00:00 2001 From: Yannick Loriot Date: Tue, 21 Apr 2015 17:30:19 +0200 Subject: [PATCH] [FIX] Plus signs (+) is not URL encoded #57 --- SocketIOClientSwift/SocketEngine.swift | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/SocketIOClientSwift/SocketEngine.swift b/SocketIOClientSwift/SocketEngine.swift index 4be2a87..d58072b 100644 --- a/SocketIOClientSwift/SocketEngine.swift +++ b/SocketIOClientSwift/SocketEngine.swift @@ -154,15 +154,17 @@ public final class SocketEngine: NSObject, WebSocketDelegate, SocketLogClient { } if params != nil { + let allowedCharacterSet = NSCharacterSet(charactersInString: "!*'();:@&=+$,/?%#[]\" ").invertedSet + for (key, value) in params! { let keyEsc = key.stringByAddingPercentEncodingWithAllowedCharacters( - NSCharacterSet.URLHostAllowedCharacterSet())! + allowedCharacterSet)! urlPolling += "&\(keyEsc)=" urlWebSocket += "&\(keyEsc)=" if value is String { let valueEsc = (value as! String).stringByAddingPercentEncodingWithAllowedCharacters( - NSCharacterSet.URLHostAllowedCharacterSet())! + allowedCharacterSet)! urlPolling += "\(valueEsc)" urlWebSocket += "\(valueEsc)" } else {