Objective-C的gzip压缩的NSData到Python gzip压缩串?(Objectiv

2019-10-16 17:06发布

我使用+ [NSData的gtm_dataByGzippingData:]为gzip由返回的UTF-8编码的数据+[NSJSONSerialization dataWithJSONObject:options:error:]

如何转换这个gzip压缩NSData为一个字符串,我可以作为一个参数发送到Python的服务器,使服务器可与解压缩zlib.decompress() ?

Answer 1:

使用类似的方法-[NSData base64EncodedString]为base64编码的gzip压缩NSData ,然后将其发送到Python的服务器。

然后,Python的服务器可以基于64位解码,然后解压缩它像这样:

contacts_data = zlib.decompress(base64.b64decode(contacts_base64), 16)


Answer 2:

当它在你在你的问题中引用的头文件说,放气是不是gzip。 Gzip已是一个文件结构,其中作为ZLIB是更大的压缩流的。

首先,我建议你改变你的代码,使用...

+ (NSData *)gtm_dataByDeflatingData:(NSData *)data;

所以,现在你有压缩数据。 你是如何把它发送到服务器? 你是否推动这一通过HTTP? 它是用直接套接字连接的定制服务? 您可以发送8位字节,是你仅限于发送7位字节? ...您使用NURLConnection? ...你想要的(压缩)数据上传为通过HTTP文件?



文章来源: Objective-C gzipped NSData to Python gzipped string?