我收到postmarkapp的附件(此处描述:http://developer.postmarkapp.com/developer-inbound-parse.html#attachments)。
我想使用fb_graph(https://github.com/nov/fb_graph)使用照片将这些照片上传到脸书!方法(https://github.com/nov/fb_graph/wiki/Photo-and-Album)。
通过在实际文件的示例中指定:source来进行测试时,这很容易并且工作正常。
但是我试图不写出文件,而只是将base64编码的字符串转换为StringIO并将其作为:source参数传递。这不起作用,我收到此错误:
ruby
FbGraph::InvalidRequest: OAuthException :: (#324) Requires upload file
我不想写出文件的原因是因为我正在使用heroku和delayed_job所以我不确定我写的文件是否仍会在处理作业时出现。这样会很好,因为我目前的计划是将图像存储在数据库中并延迟作业。
感谢。
答案 0 :(得分:0)
我没有找到一种方法来使用heroku,而不首先使用gridfs将其上传到mongohq。您不能使用雪松短暂文件系统,因为在控制器操作期间写入的那些文件对您的delayed_job工作人员不可见。
所以即使它很糟糕我也会这样做;
那么,为什么不直接发布到Facebook,如果我要承担上传到mongohq的初始阻止成本呢?因为上传的速度比上传到FB的速度要快得多。
heroku上的右答案是让一个node.js dyno从邮戳处理这些回调,因此在从邮戳读取或写入mongohq(或facebook)时不会阻止dyno然后做一些额外的工作让节点应用程序与rails应用程序交互以保持同步。