我正在尝试构建ACS(Appcelerator Cloud Service)数据库的前端。作为管理员前端的一部分,用户将上传图像,我使用Photos对象来保存它们。我使用以下代码将照片上传到云数据库,它在我的本地系统/ PC上运行良好。
var data = {
session_id:req.session.session_id,
photo: req.files.photo_file
};
data['photo_sizes[medium_500]'] = '500x333';
data['photo_sync_sizes[]'] = 'medium_500';
ACS.Photos.create(data, function(e) {
if(e.success && e.success === true){
// Update custom object with this photo
ACS.Objects.update({
session_id:req.session.session_id,
classname:objname,
id:objid,
fields: {
photo_id:e.photos[0].id,
photo_url:e.photos[0].urls.medium_500
}
},function(data) {
if(data.success) {
// console.log('Updated successfully:' + JSON.stringify(data));
res.send(data);
}else {
console.log('Error:\n' +
((data.error && data.message) || JSON.stringify(data)));
}
}
);
//res.send(data);
}else{
logger.debug('Error: ' + JSON.stringify(e));
req.session.flash = {msg:e.message, r:0};
res.redirect('/');
}
});
这里发生的是,多部分HTML表单正在上传文件。该文件在服务器上读取并传递给ACS.Photos.create调用。但是,当我将应用程序发布到云时,它会出现以下错误和应用程序崩溃。 [错误] [1233]错误:EACCES,打开' / tmp / 292fb15dcab44f58a315515bd9e70a8a'
查看错误,很清楚,服务器无法访问/ tmp目录。
Node.acs建立在Node.js之上,我看到了几个使用这种方法的node.js示例。当应用程序/网站在Web服务器上发布或上线时如何处理此问题?
谢谢,
NIRANJAN
答案 0 :(得分:0)
看起来确实存在一些文件权限问题。请看一下node.acs组上的这篇文章。
https://groups.google.com/forum/#!topic/node-acs/XrRxBTtwiO4
问题现在解决了!