2010-05-29 53 views
3

我敲我的头撞在墙上有这样一条:App Engine的 - 从保存在数据存储的API响应,文件(BLOB)

我想要做的就是存储从返回的文件数据存储中的一个API作为一个blob。

这是我在我的本地计算机上使用的代码(这当然作品由于现有的文件系统):

client.convertHtml(html, open('html.pdf', 'wb')) 

既然不能写在App Engine上一个文件我试过几种方法存储响应,但没有成功。 有关如何做到这一点的任何提示?我试图用StringIO来完成它,并设法存储响应,但之后无法将其存储为数据存储区中的斑点。

谢谢, 克里斯

回答

2

发现的错误。这是它现在的样子(简化)。

output = StringIO.StringIO() 

    try: 
     client.convertURI("example.com", output) 
     Report.pdf = db.Blob(output.getvalue()) 
     Report.put() 
    except pdfcrowd.Error, why: 
     logging.error('PDF creation failed %s' % why) 

我试图保存输出而不调用“getvalue()”,这是问题所在。也许这对未来的某个人有用:)

相关问题