我有一个api,它接受来自Android应用程序的base64编码格式的图像,存储在一个位置。 我在网上找到的代码是:
// Get image string posted from Android App
$base=$_REQUEST['image'];
// Get file name posted from Android App
$filename = $_REQUEST['filename'];
// Decode Image
$binary=base64_decode($base);
header('Content-Type: bitmap; charset=utf-8');
// Images will be saved under 'www/imgupload/uplodedimages' folder
$file = fopen('uploadedimages/'.$filename, 'wb');
// Create File
fwrite($file, $binary);
fclose($file);
答案 0 :(得分:1)
我有自己的,也许不是那么受欢迎的方式! 我在base 64字符串的开头添加一些特殊字符串,在php中,我检查它,如果它存在,我知道它来自我的应用程序,我从base64中删除字符串并解码并保存图像! PHP代码,是我这样的事情: 这里$ base是来自app的基本64字符串,它应该有前缀!
// here, $prefix, is the string that we added in the beginning of our base64 string
$prefix = "*%%*SOME_SPECIAL_CHARACTERS*%%*";
if (substr($base, 0, strlen($prefix)) == $prefix) {
$base = substr($base, strlen($prefix));
} else {
networkError("CHAR", -2);
}
// Decode Image
$binary = base64_decode($base);
诅咒仍然是一个职业黑客可以破解这个,但他们黑客攻击