我将图像作为longBLOB存储在database.my表结构中如下
CREATE TABLE `posts` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(50) DEFAULT NULL,
`body` text,
`created` datetime DEFAULT NULL,
`modified` datetime DEFAULT NULL,
`user_id` int(11) DEFAULT NULL,
`image` longblob,
PRIMARY KEY (`id`)
).
我需要使用json格式的所有其他数据发送此图像。我在控制器中的代码是
public function index()
{
$this->set(array('posts'=> $this->Post->find('all'),
'_serialize' => array('posts')));
}
当我转到localhost / app / posts.json时,我得到了json格式的所有数据,但是对于图像我得到了null。
{"Post":{"id":"1","title":"The title","body":"This is the post body.","created":"2013- 11-11 16:32:45","modified":null,"user_id":"1","image":null}
我找到了一些解决方案,说明在数据库中存储图像路径并将其转换为JSON并将其发送到服务器,但我不想在数据库中存储图像路径,那么任何人都可以帮我发送JSON格式的图像吗? / p>
答案 0 :(得分:1)
我不会将图像存储在数据库中,但您可以选择。
使用base64对二进制日期进行编码,例如,请参阅Binary Data in JSON String. Something better than Base64。