【问题标题】:How can I stream audio files (mp3) from Aws s3?如何从 Aws s3 流式传输音频文件 (mp3)?
【发布时间】:2020-09-07 12:40:20
【问题描述】:

我有一个简单的 javascript 播放器,我想从 aws s3 sdk (Php) 流式传输音频文件 (mp3)。 这些文件是私有的,所以我也应该进行身份验证。

如果我将 mp3 文件的公共链接插入到 html 对象的 src 中,流就可以工作。

Tnx

【问题讨论】:

    标签: amazon-s3 audio-streaming


    【解决方案1】:

    您不需要通过 php 后端进行流式传输。您可以使用 php 代码生成 Presigned url 并将其发送到前端。它将在有限的时间内访问。

    示例 PHP 代码:

    //Creating a presigned request
    $s3Client = new Aws\S3\S3Client([
        'profile' => 'default',
        'region'  => 'us-east-1',
        'version' => '2006-03-01',
    ]);
    
    $cmd = $s3Client->getCommand('GetObject', [
        'Bucket' => 'my-bucket',
        'Key'    => 'testKey'
    ]);
    
    $request = $s3Client->createPresignedRequest($cmd, '+20 minutes');
    $presignedUrl = (string) $request->getUri();
    

    参考:

    https://docs.aws.amazon.com/sdk-for-php/v3/developer-guide/s3-presigned-url.html

    希望对你有帮助。

    【讨论】:

    • 您运行此代码以从亚马逊获取 url?新的 Aws\S3\S3Client 来自哪里?这是一个可下载的包吗?什么是 testKey?
    猜你喜欢
    • 2017-05-09
    • 1970-01-01
    • 1970-01-01
    • 2012-10-19
    • 2016-04-10
    • 2016-02-03
    • 2017-05-09
    相关资源
    最近更新 更多