我正在通过 PHP 接收的 POST 向我的网页发送大量文本。它大约是 500kb - 1.5 mb。问题在于它是非常重复的数据,我想压缩它。数据看起来像这样,“123,123,123,124,124,124,125,126...等”
我找到了 Geoggrey Garside http://cocoadev.com/wiki/NSDataCategory的 NSData+Compression 库,其中包含 gzipInflate 和 gzipDeflate 方法,并且已经获得了 gzipInflate 方法来正确解压缩来自服务器的数据,但我一生都无法了解如何在 iOS 中压缩字符串并通过 PHP 将其发送到服务器进行解压缩。
这是我的 iOS 代码:
NSData* uncompressedStringData = [@"test" dataUsingEncoding:NSUTF8StringEncoding];
NSData* compressedData = [uncompressedStringData gzipDeflate];
ASIFormDataRequest * request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"myserver"]];
[request setPostValue:@compressedData forKey:@"1"];
...more code to deal with sending the request.. etc...
这是我的 PHP 代码:
echo gzinflate($_POST['1']);
我从服务器得到的只是
Warning: gzinflate() data error
任何帮助将非常感激!