在我的 iOS 应用程序中,为了发布新问题,我向http://api.mysite.com/questions发出 HTTP POST 请求。POST 数据显然更大或更小,具体取决于图像是否附加到问题上。小(大小约为 100-200kb)图像可以毫无问题地发布到服务器。但是,来自设备相机的较大照片 (~1mb) 会由于图像尺寸过大而导致请求超时。
请您告诉我如何确保图像上传没有问题,这似乎不会发生在许多其他应用程序中。
是服务器问题还是 iOS 代码本身的问题?
编辑 - -
在服务器上,一旦收到请求,PHP 就会将图像数据写入文件。blob 是图像数据:
$filepath = $this->debug == true ? "../cityw/img/questions/{$qid}/attachment.png" :"../i/questions/$qid/attachment.png";
if (!file_exists($this->debug == true ? "../cityw/img/questions/{$qid}" : "../i/questions/{$qid}")) {
mkdir($this->debug == true ? "../cityw/img/questions/{$qid}" : "../i/questions/{$qid}");
}
$fh = fopen($filepath, 'w');
fwrite($fh, $blob);
fclose($fh);
图像数据以 BASE64 格式发送到服务器,然后在到达服务器后进行解码。