我正在创建一个Java应用程序,它通过http将视频文件"流式传输"到浏览器(目前是Chrome v24.x).此视频发送到FFmpeg,其输出通过HTTP发送.
现在,一旦文件被完全编码,就会使用分块传输来提供文件,并响应范围请求.示例标题:
GET /file/9fe6b502-c127-47c2-b6d2-83ea58676a8d HTTP/1.1 : Host: localhost:1234 : Connection: keep-alive : Accept-Encoding: identity;q=1, *;q=0 : User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_2) AppleWebKit/537.17 (KHTML, like Gecko) Chrome/24.0.1312.56 Safari/537.17 : Accept: */* : Referer: http://localhost:1234/media/9fe6b502-c127-47c2-b6d2-83ea58676a8d : Accept-Language: en-US,en;q=0.8 : Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3 : Cookie: plushContainerWidth=100%25; plushNoTopMenu=0 : Range: bytes=0- :
Run Code Online (Sandbox Code Playgroud)
HTTP/1.1 206 Partial Content : Connection: close : Date: Mon, 28 Jan 2013 14:51:52 GMT : Content-Type: video/mp4 : Etag: "9fe6b502-c127-47c2-b6d2-83ea58676a8d" : Accept-Ranges: bytes : Content-Range: bytes …Run Code Online (Sandbox Code Playgroud) 我有一些文件存储在MongoDB中,类似于以下内容:
{
"id": "0001",
"name": "Joe",
"last_name": "Blogs",
"results":
[
{ "id": "5001", "mark": "78" },
{ "id": "5002", "mark": "105" },
{ "id": "5005", "mark": "97" },
]
}
Run Code Online (Sandbox Code Playgroud)
有许多类似于上面的条目.我遇到的问题是一些"结果"字段完全丢失,所以有些条目如下所示:
{
"id": "0001",
"name": "Joe",
"last_name": "Blogs"
}
Run Code Online (Sandbox Code Playgroud)
我试图聚合这个以返回"名称","last_name"和平均"标记".我对以下代码表示满意:
db.sites.aggregate(
{ $project : { name : "$name", last_name : "$last_name", results : "$results" } },
{ $unwind: "$results" },
{ $group : {
_id : "$_id",
average_mark : { $avg : "$results.mark" },
name : { $last : "$name" …Run Code Online (Sandbox Code Playgroud)