ios - Three20用TTURLRequest发送图片不成功啊
PHP中文网
PHP中文网 2017-04-17 10:58:10
[iOS讨论组]

我写了这么个方法用来发送图片。怎么看也没错啊。打印TTURLRequest的日志出来看,显示数据已经发出去了。

可是服务器返回的提示就说图片文件为空,这是为什么呀?

+ (void)doAsynchronousRequestPost:(NSString *)url 
							 File:(NSDictionary *)file
						 Delegate:(id)delegate 
						 WithInfo:(NSDictionary *)info {

	TTURLRequest *request = [self requestPost:url Delegate:delegate];
	
	request.response = [[[TTURLJSONResponse alloc] init] autorelease];
	
	if (nil != info) {
		[request setUserInfo:info];
	}
	
	if (nil != file) {
		NSData *imageData = UIImageJPEGRepresentation([file objectForKey:@"data"], 0.7f);
		[request addFile:imageData mimeType:[file objectForKey:@"type"] fileName:[file objectForKey:@"key"]];
	} else {
		return;
	}
	
	[request send];

}
PHP中文网
PHP中文网

认证0级讲师

全部回复(1)
大家讲道理

还是我自己来回答吧。

TTURLRequest的generatePostBody方法中开头默认添加有一句:

[body appendData:[[NSString stringWithFormat:@"--%@\r\n", kStringBoundary]
    dataUsingEncoding:NSUTF8StringEncoding]];

这样会造成httpbody体中的第一个entity的数据为空。

很多服务器上去的是第一个entity的缘故把。

只要把这句话注释掉就好了。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号