[英]How to send base64 image to server - PHP
我正在通过PHP文件从Android应用程序向服务器发送base64字符串。
我是从教学视频中得到的:
<?php
require 'Init.php';
header('Content-type : bitmap; charset=utf8');
if(isset($_POST['encoded_string'])){
$encoded_string = $_POST['encoded_string'];
$image_name = $_POST['image_name'];
$decoded_string = base64_decode($encoded_string);
$path = 'ProfileIcons/' .$image_name;
$file = fopen($path, 'wb');
$is_written = fwrite($file, $decoded_string);
fclose($file);
}
?>
它会将图像存储在目录中,但是当您打开时,它没有图像。 这是一个空白png。 代码有问题吗? 如果是这样,我应该怎么用? 谢谢。
您应检查以下几点:
1.确保服务器已收到base64字符串
$ encoded_string = $ _POST ['encoded_string'];
检查$encoded_string
的长度,该长度应与android客户端所说的长度相同。
$ decoded_string = base64_decode($ encoded_string);
检查$decoded_string
的长度,不应为零或奇数。
$ is_write = fwrite($ file,$ decoded_string);
$is_written
应该是已写入文件的数据长度,如果为false
,则说明有问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.