小编Bri*_*ius的帖子

使用node/express显示BASE64视频

所以,有点奇怪的问题.我有一堆媒体文件在mongo中保存为base64字符串,有些是图像,有些是视频.

我制作了一个用于获取媒体文件的API:

app.get('/api/media/:media_id', function (req, res) {
    media.findById(req.params.media_id)
        .exec(function (err, media) {
            if (err) {
                res.send(err);
            }

            var file = new Buffer(media.file, 'base64');
            res.writeHead(200, {'Content-Type': media.type, 'Content-Transfer-Encoding': 'BASE64', 'Content-Length': file.length});
            res.end(file);
        });
});
Run Code Online (Sandbox Code Playgroud)

现在,图像没有问题.它们直接从API加载,当我从前端调用API时(例如<img src="/api/media/23498423">)

问题

如果我从前端获取视频,如图像 - 但使用视频或对象标记:

<video src="/api/media/3424525" controls></video>
Run Code Online (Sandbox Code Playgroud)

没问题,但如果我直接从API加载视频:

http://localhost:8080/api/media/3424525
Run Code Online (Sandbox Code Playgroud)

服务器进程崩溃,没有错误.它只是冻结了.我们不是在谈论巨大的视频文件 - 它是一个1.5MB的视频.

我正在测试的所有视频的标题中的媒体类型是video/mp4.哦,只是要明确:如果我对图像做同样的事情,一切都很完美.

编辑:

好的,正如@idbehold和@zeeshan所建议的那样,我看了一下gridfs和gridfs-stream,为了我的应用程序的目的,这肯定是我应该首先使用的.但是,在我的应用程序中实现gridfs后,问题仍然存在.

app.get('/api/media/:media_id', function (req, res) {
    gfs.findOne({ _id: req.params.media_id }, function (err, file) {
        if (err) {
            return res.status(400).send(err);
        }
        if (!file) {
            return res.status(404).send('');
        }

        res.set('Content-Type', …
Run Code Online (Sandbox Code Playgroud)

video base64 mongodb node.js express

11
推荐指数
1
解决办法
1027
查看次数

缺少SSL证书?

我正在搞乱解析(parse.com),当我运行以下内容时,我遇到致命的错误.我运行的代码直接从parse.com介绍到PHP SDK.

我在Windows 10上运行XAMPP.

我是否需要通过https运行我的脚本,或者我真的在某处丢失了一些SSL证书?我如何让它工作?

错误:

Fatal error:  Uncaught exception 'Parse\ParseException' with message 'SSL certificate problem: unable to get local issuer certificate' in C:\xampp\htdocs\project\assets\php\vendor\parse\php-sdk\src\Parse\ParseClient.php:284
Stack trace:
#0 C:\xampp\htdocs\project\assets\php\vendor\parse\php-sdk\src\Parse\ParseObject.php(1037): Parse\ParseClient::_request('POST', '/1/classes/Test...', NULL, '{"foo":"bar"}', false)
#1 C:\xampp\htdocs\project\assets\php\vendor\parse\php-sdk\src\Parse\ParseObject.php(947): Parse\ParseObject::deepSave(Object(Parse\ParseObject), false)
#2 C:\xampp\htdocs\project\assets\php\test.php(15): Parse\ParseObject->save()
#3 {main}
  thrown in C:\xampp\htdocs\project\assets\php\vendor\parse\php-sdk\src\Parse\ParseClient.php on line 284
Run Code Online (Sandbox Code Playgroud)

和PHP片段:

require("./vendor/autoload.php");

use Parse\ParseClient;

ParseClient::initialize('secret', 'reallysecret', 'ubersecret');

use Parse\ParseObject;

$testObject = ParseObject::create("TestObject");
$testObject->set("foo", "bar");
$testObject->save();
Run Code Online (Sandbox Code Playgroud)

php xampp ssl ssl-certificate parse-platform

4
推荐指数
1
解决办法
545
查看次数

CSS3转换:转换时转换为悬停

这应该很简单.

我的HTML中有一堆锚点,如下所示:

<a href="#">Link 1</a>
<a href="#">Link 2</a>
<a href="#">Link 3</a>
<a href="#">Link 4</a>
<a href="#">Link 5</a>
Run Code Online (Sandbox Code Playgroud)

在CSS中我放置了一个悬停效果来做一个 translate: transform();

a {
  font-size: 2em;
  transition: all .3s ease-out;
}

a:hover {
  transform: translate(0, -5px);
}
Run Code Online (Sandbox Code Playgroud)

现在,当你将它们悬停时,这应该会使锚点向上移动5个像素.它们确实如此,但即使鼠标仍在徘徊,它们也会立即拍下来.其他人遇到这种行为,并找到了解决方案?我想效果保持活跃,而鼠标悬停.Codepen链接:http://codepen.io/BrianEmilius/pen/NqoLQo

css html5 css3 css-transitions css-transforms

2
推荐指数
1
解决办法
2万
查看次数