2014-11-08 90 views
-1

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

这是我做的上传(工作,但即时通讯知道这是一个最好的方法):

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

什么让我迷惑,如果我已经保存图像文件(步骤4),我仍然需要将其保存到BLOB列(步骤5)?

现在,我对下载部分感到困惑。这是林规划做:

  1. 使用file_get_contents(返回字符串)
  2. 发送的结果(串),以我的Android应用
  3. 获取串并转换获得在上传步骤4中的图像文件它的形象(怎么样?

这是我需要下载?

我需要在下载中使用base64_decodebase64_encode吗?我什么时候使用它?

对不起,如果我的问题听起来很愚蠢,我仍然没有得到逻辑。

非常感谢您的时间,所有帮助表示赞赏。

回答

1

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

不,你不知道。您可以在数据库中存储对该文件的引用,如文件名或完整路径。

现在,我对下载部分感到困惑。这是林规划做:

  1. 使用的file_get_contents(返回字符串)

和BASE64_ENCODE它

  • 获取字符串并将其转换为图像(如何?)
  • 您需要base64对它进行解码,因为您在从服务器发送它之前对其进行编码。 (步骤1)

    +0

    谢谢。所以下载的方式恰恰与上传相反?我会很快尝试你的解决方案并让你知道。非常感谢 – 2014-11-08 09:53:18

    +0

    确切地说,您只需反转“上传”过程即可。 – 2014-11-08 09:54:32

    +0

    完成,非常感谢:) – 2014-11-08 11:54:47