提供404

2024-04-26 13:54:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我正试着从我存储在数据库模型作为一个blobstore.BlobReferenceProperty()我不确定如何正确地执行此操作,因为我当前的方法给出了404。我通过使用常规的self.request.get('file_field')接受“重写”请求来存储blobKey值

在SDK控制台中,密钥的内容如下所示:

Content-Type: video/mp4
MIME-Version: 1.0
Content-Length: 475712
Content-MD5: OTY0MjY4OGI4NDgwYzVlZTI2MGJiNzg0YTA4OTIzNzY=
content-type: video/mp4
content-disposition: form-data; name="video_file"; filename="test_time.mp4"
X-AppEngine-Upload-Creation: 2012-11-10 21:41:12.973934

我的视频下载处理程序非常标准,看起来像这样

^{pr2}$

以下是如何呈现url:

'/videos/%s' % time_data_instance.video_key.key()

以及url映射:

('/videos/([^/]+)?', VideoServeHandler)

下面是我从控制台得到的404错误:

INFO     2012-11-10 21:54:11,371 dev_appserver.py:3092] "GET /videos/Content-Type:%20video/mp4MIME-Version:%201.0Content-Length:%20475712Content-MD5:%20OTY0MjY4OGI4NDgwYzVlZTI2MGJiNzg0YTA4OTIzNzY=content-type:%20video/mp4content-disposition:%20form-data;%20name= HTTP/1.1" 404 -

有人知道问题出在哪里吗,看看404中的网址,它看起来好像是不正确的,但我找不到任何其他方法来生成它

更新:

这是全部代码

http://www.pastebucket.com/5163


Tags: 方法datatimeversionvideotypecontentlength
2条回答

发送blob需要BlobKey,而不是BlobInfo。在

只需传递资源以发送\u blob

class VideoServeHandler(blobstore_handlers.BlobstoreDownloadHandler):
  def get(self, resource):
    resource = str(urllib.unquote(resource))
    self.send_blob(resource)

问题是您的请求字符串:

INFO     2012-11-10 21:54:11,371 dev_appserver.py:3092] "GET /videos/Content-Type:%20video/mp4MIME-Version:%201.0Content-Length:%20475712Content-MD5:%20OTY0MjY4OGI4NDgwYzVlZTI2MGJiNzg0YTA4OTIzNzY=content-type:%20video/mp4content-disposition:%20form-data;%20name= HTTP/1.1" 404 -

据我所知,你请求/videos/Content-Type:%20video/mp4[..some garbage...],难怪你会得到404。在

再次检查如何创建请求URL。绝对不是这样的:

^{pr2}$

相关问题 更多 >