开发者

App Engine - Save response from an API in the data store as file (blob)

I'm banging my head against the wall with this one:

What I want to do is store a file that is returned from an API in the data store as a blob.

Here is the code that I use on my local machine (which of course works due to an existing file system):

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

Sinc开发者_如何转开发e I cannot write to a file on App Engine I tried several ways to store the response, without success. Any hints on how to do this? I was trying to do it with StringIO and managed to store the response but then weren't able to store it as a blob in the data store.

Thanks, Chris


Found the error. Here is how it looks like right now (simplified).

    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)

I was trying to save the output without calling "getvalue()", that was the problem. Perhaps this is of use to someone in the future :)

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜