我从我的android appliation获取base64字符串,使用php脚本将其保存到目录,一切正常用于png。除了我需要脚本适用于所有图像类型 在android方面我有 httpservlet扩展类并使用它发送带有包含base64字符串的变量的get请求。 所以我们所拥有的只是服务器端没有其他的base64字符串 你能帮帮我吗? 这是我的PHP代码
<?php
$imgstr = $_REQUEST['string'];
// Decode the data
$data = base64_decode($imgstr);
$im = imagecreatefromstring($data);
if ($im !== false) {
header('Content-Type: image/png');
imagepng($im);
$success = file_put_contents("img/abc". uniqid().".png", $data);
imagedestroy($im);
if ($success) {
echo 'yes yes yes';
}
} else {
echo 'An error occurred.';
} ?&GT;
答案 0 :(得分:1)
好的,我所做的就是我在编码到base64之前计算了mime类型并将其作为变量发送
我就这样做了
public static String getMimeType(String url) {
String type = null;
String extension = MimeTypeMap.getFileExtensionFromUrl(url);
if (extension != null) {
MimeTypeMap mime = MimeTypeMap.getSingleton();
type = mime.getMimeTypeFromExtension(extension);
}
return type;
}
mimetype = getMimeType(picturePath);
String temp[] = mimetype.split("/");
as.add(new BasicNameValuePair("mime", temp[1]));
此后,与图像一起发送到服务器。