简介
上一篇文章给出了Android端的部分代码,这篇文章则完成了服务器端的相关工作,我选择php来对上传文件进行处理,毕竟php比较好上手。
准备工作
1.准备一个服务器,可以选择购买云服务器或者搭建在本地,我选择的是腾讯云,学生价一个月一块钱,很划算
2.配置好服务器相关环境,我选择的是CentOS,大家尽量选择基于Linux的环境
服务器端代码
receive_file.php
<?php
$base_path = "/usr/share/nginx/html/upload/"; //存放目录
if(!is_dir($base_path)){
mkdir($base_path,0777,true);
}
$target_path = $base_path . basename ( $_FILES ['file'] ['name'] );
if (move_uploaded_file ( $_FILES ['file'] ['tmp_name'], $target_path )) {
$array = array (
"status" => true,
"msg" => $_FILES ['file'] ['name']
);
echo json_encode ( $array );
} else {
$array = array (
"status" => false,
"msg" => "There was an error uploading the file, please try again!" . $_FILES ['file'] ['error']
);
echo json_encode ( $array );
}
?>
注意事项
- 在服务器端,php文件同目录下新建一个upload文件,如下图所示
- 通过终端查询upload文件的读写权限,
ls -l
如果你upload文件的读写不是下图所示,那么PHP代码运行可能会出现问题
所以我们需要修改upload文件的读写权限,命令如下
chown -R 777 upload
- 安卓端记得在配置文件中申请联网权限
完成上述工作后,应该就能实现简单的Android端文件上传下载功能了。