socket.io-client-swift
socket.io-client-swift copied to clipboard
Binary data in base64 encoding (Polling) is not padded, causing compatibility issue with other SocketIO clients/servers
This is actually not this library's fault: swift's built in base64EncodedString
function does not right-pad the base 64 string (which is standard), and this leads to several compatibility issues not only for socketIO (An example StackOverflow issue).
I use Swift's socketIO as the client and a python socketIO server. The python base64 library strictly follows the standard, so it throws an error at Swift SocketIO's base64 message. This is my original discussion thread under the python socketIO repo and the author's reply.
Therefore, I think the Swift SocketIO library can manually add right padding after calling the built-in base64EncodedString
function.