gpt4 book ai didi

iphone - 将 ASIHTTPRequest 帖子设置为 SimpleHTTPServer Python 服务器?

转载 作者:行者123 更新时间:2023-11-28 16:52:49 25 4
gpt4 key购买 nike

我正在开发一个项目(我不会将其发布到应用商店 - 只是为了好玩),该项目将通过 HTTP Post 请求将图像从我的 iPhone 上传到我运行 Python 脚本 SimpleHTTPServer( http://ubuntuguide.net/http-server-support-uploading-files-from-windows-in-ubuntu)。我过去曾成功地将 ASIHTTP API 用于文本字符串,但我终生无法弄清楚如何上传图像。这是我目前使用的:

-(void)processRequest {

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"mySimpleHTTPServer"]];
[request setFile:[UIImage imageNamed:@"Image.png"] withFileName:@"Image.png" andContentType:@"image/png" forKey:@"file"];

[request startSynchronous];
NSLog(@"%@",[request responseString]);
NSUserDefaults *profiles = [NSUserDefaults standardUserDefaults];
[profiles setObject:[request responseString] forKey:@"response"];
[profiles synchronize];

[self performSelector:@selector(endRequest) withObject:nil afterDelay:0];

}

真的,我认为我唯一错的部分是:

[request setFile:[UIImage imageNamed:@"Image.png"] withFileName:@"Image.png" andContentType:@"image/png" forKey:@"file"];

关于我可能哪里出错的任何想法?

最佳答案

作为@SorinA。提到,您应该提供一个文件路径作为setFile:withFileName:andContentType:forKey: 的第一个参数。在您的示例中,您改为提供 UIImage 对象。

然而,最简单的修复可能是只使用 setData:withFileName:andContentType:forKey:。您只需将 UIImage 对象转换为其 NSData 表示:

NSData *imageData = UIImagePNGRepresentation([UIImage imageNamed:@"Image.png"]);
[request setData: imageData
withFileName: @"Image.png"
andContentType: @"image/png"
forKey: @"file"];

此外,您的 URL 看起来有点奇怪(“mySimpleHTTPServer”),我认为这只是一个 URL 的占位符,格式为“http://localhost:some_port/some_path”?一定要确认您的 Python 网络服务器确实在接收请求。

关于iphone - 将 ASIHTTPRequest 帖子设置为 SimpleHTTPServer Python 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5113601/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com