如何使用 curl fetch 从 Cloudinary 获取视频时长?

Posted

技术标签:

【中文标题】如何使用 curl fetch 从 Cloudinary 获取视频时长?【英文标题】:How to get video duration from Cloudinary with curl fetch? 【发布时间】:2021-12-06 06:18:12 【问题描述】:

我想从 Cloudinary 获取视频时长。我找到了this question,但我在 curl 中找不到任何方法。我想我应该使用explicit method,但我试过了,但我得到了找不到页面的错误。

【问题讨论】:

【参考方案1】:

我是 Danny,在 Cloudinary 的客户成功团队工作。

无需使用 Upload API 的显式方法,您只需从 Admin API 获取资源,此处解释:https://cloudinary.com/documentation/admin_api#get_the_details_of_a_single_resource

您需要向/resources(/:resource_type)(/:type)/public_id 发出GET 请求。默认情况下不返回视频时长,因此您需要在 GET 请求中指定 ?image_metadata=true 才能返回。

例如,要返回our sample dog video 的持续时间,我会在此 URL 上执行 GET,并根据需要替换 API 密钥和秘密:https://API_KEY:API_SECRET@api.cloudinary.com/v1_1/demo/resources/video/upload/dog?image_metadata=true

这将返回以下 JSON,其中包括 video_duration


    "asset_id": "c07b6c11dfbc9b8849eacbd4c20da607",
    "public_id": "dog",
    "format": "mp4",
    "version": 1426536413,
    "resource_type": "video",
    "type": "upload",
    "created_at": "2015-03-16T20:06:53Z",
    "bytes": 9094354,
    "width": 854,
    "height": 480,
    "backup": true,
    "access_mode": "public",
    "url": "http://res.cloudinary.com/demo/video/upload/v1426536413/dog.mp4",
    "secure_url": "https://res.cloudinary.com/demo/video/upload/v1426536413/dog.mp4",
    [...]
    "video_duration": 13.4134,
    "audio_duration": 13.413396,
    "audio_start_time": 0.0,
    "video_start_time": 0.0,
    [...]

我希望这会有所帮助。如果您有任何后续问题,欢迎在此处发布,或通过我们的Support Portal 向我们提出问题。

【讨论】:

有没有办法在不使用 API_KEY:API_SECRET 的情况下得到这个 嘿@YasinTazeoglu。不幸的是没有。此信息仅在身份验证后可用。如果您需要获取此信息而不在客户端存储您的 API 密钥和机密(出于安全考虑,我们绝对建议您这样做),您可以使用我们的后端 SDK (cloudinary.com/documentation/backend_sdks) 并将结果传递给您的前端。

以上是关于如何使用 curl fetch 从 Cloudinary 获取视频时长?的主要内容,如果未能解决你的问题,请参考以下文章

如何将 *any* cURL 或 node-fetch 请求转换为 Axios 请求?

从 stats.nba.com 抓取数据,curl::curl_fetch_memory(url, handle = handle) 中出现错误

如何从浏览器中的 Fetch 请求中获取标头位置值

在 JavaScript Fetch API 中实现 curl 发布请求

r curl::curl_fetch_memory(url,handle = h)中的 Blastula 错误:MAIL 失败:530

PHP 标签cloudin'