0

我对 CakePHP 和图像还很陌生,所以请多多包涵。您可以假设我使用的是最新版本。

我正在尝试构建一个可以显示从服务器检索到的图像的 Android 应用程序。

假设我在 assets 文件夹中有一个名为 football.jpg 的图像。我将如何将其存储在数据库中,然后如何将其输出到 Android 应用程序?我是只发送链接还是发送整个图像?如果只是链接,这是否意味着我必须使用链接重新连接到服务器然后获取图像?对不起,如果这没有意义。仍然试图绕过它。

4

1 回答 1

1

请注意,最好将文件存储在服务器的文件系统上,并将文件的路径存储在数据库中。这背后的原因是 BLOB 存储在文件系统上与所有其他典型数据不同的区域中,就检索而言,它的速度并没有快很多。

这是我的意思的链接:将图片存储为文件还是在网络应用程序的数据库中?

关于将其返回到您的 Android 应用程序,您可以在响应对象 ( http://book.cakephp.org/2.0/en/controllers/request-response.html#cake-response-file ) 中发送文件:

public function sendFile($id) {
    $file = $this->Attachment->getFile($id);
    $this->response->file($file['path']);
    //Return reponse object to prevent controller from trying to render a view
    return $this->response;
}

这应该使您可以更好地控制将哪些文件返回给您的客户。

于 2013-04-13T13:51:54.580 回答