0

我只是想弄清楚如何使用blobstoreHTML5音频。

我的代码只是对工作代码进行了轻微修改,因此不需要进行重大更改。

class data(webapp2.RequestHandler): 
def get(self):
    a = db.GqlQuery("SELECT * FROM UserPhoto")
    blob = a[1].blob_key


    self.redirect('/Serve/%s' % blob.key())



class ServeHandler(Handler, blobstore_handlers.BlobstoreDownloadHandler):
def get(self, audio_key):
    if not blobstore.get(audio_key):
        self.error(404)
    else:
        self.send_blob(audio_key)
        self.redirect('/music')

class music(Handler):
def get(self):
    self.render("music.html")

这是播放音频的 HTML:

<audio controls="controls">
<source src="/Serve/%s"/>
Your browser does not support the audio element.

错误是

"GET /Serve/%s HTTP/1.1" 404 -
4

1 回答 1

3

您似乎没有将实际的关键变量放在 HTML 中。你只是有/serve/%s这显然是错误的——Django 模板甚至不使用 Python 字符串替换,更不用说你没有给它任何替换的事实。

您需要将 blob 键从get处理程序传递给模板,然后使用<source src="/Serve/{{ blob_key }}"/>.

于 2012-08-08T16:54:40.557 回答