PHP Web服务文件上传&;使用Android客户端下载逻辑


PHP webservice file upload & download logic with Android client

首先,这是我第一次同时构建Web服务和android客户端,所以请帮助我。我的目标是能够从android应用程序上传文件并从Web服务下载。

这是我为上传所做的(工作,但我确定这是最好的方式):

  1. 在android应用程序中将图像转换为base64字符串
  2. 将转换后的字符串(表单图像)发送到Web服务
  3. 使用webservice中的base64_decode函数对该字符串进行解码
  4. 使用file_put_contents保存解码字符串中的图像
  5. 将解码后的字符串输入到我的数据库中的BLOB字段中

让我感到困惑的是,如果我已经保存了图像文件(步骤4),我是否还需要将其保存到BLOB列(步骤5)?

现在,我对下载部分感到困惑。这就是我计划做的:

  1. 使用file_get_contents(返回字符串)获取上传中步骤4的图像文件
  2. 将结果(字符串)发送到我的android应用程序
  3. 获取字符串并将其转换为图像(如何?

这就是我需要下载的全部内容吗?

下载时需要使用base64_decode还是base64_encode?我什么时候用?

对不起,如果我的问题听起来很傻,我还是不明白其中的逻辑。

非常感谢您抽出时间,我们非常感谢您的帮助。

让我感到困惑的是,如果我已经保存了图像文件(步骤4),我是否还需要将其保存到BLOB列(步骤5)?

不,你没有。您可以在DB中存储对该文件的引用,如文件名或完整路径。

现在,我对下载部分感到困惑。这就是我计划做的:

  1. 使用file_Get_contents(返回字符串)从上传步骤4获取图像文件

并基于64_encode it

  1. 获取字符串并将其转换为图像(如何?)

您需要对其进行base64解码,因为您在从服务器发送之前对其进行了编码。(步骤1)