首页 > 解决方案 > 使用 Laravel 8.x 上传 vimeo 视频

问题描述

我正在使用 vimeo 基本帐户和 Laravel 8.x / guzzle 测试 vimeo 以支付专业许可证。

我正在尝试实现基于表单的视频上传方法。根据 vimeo 网站可用的文件,第一步包括向 /me/videos 发送一个发布请求,然后我将收到一个响应,其中将在 upload.form 字段中包含一个 HTML 表单。然而,请求状态码是正确的(201:created)。

我的问题是我在 api 服务器响应中没有看到这个字段(upload.form)(我做了一个 dd($response))。

这是我的控制器中的代码:

 $response =  Http::withToken('xxxxxxx')->withHeaders([
            'Content-Type'=>'application/json',
            'Accept'=>'application/vnd.vimeo.*+json;version=3.4'
            ])->post('https://api.vimeo.com/me/videos', [
            'upload'=>[                
                'size'=>$request->file->getsize(),
                'approch'=>'post',
            ]
        ]);

有人可以帮我解决这个问题吗?

我读过的文档链接是:Working with Video Uploads and other API references。

我真的需要你的帮助

标签: laravelvimeo

解决方案


感谢你所做的一切。我用邮递员尝试了同样的请求,它让我明白指令 dd($response) 并没有给我服务器响应中包含的所有信息,而只是标题中的一些信息。

要查看我想要的内容,我使用了以下说明之一:

dd($response->body());
// or
dd($response->json())

例如要获取 vimeo API 提供的 HTML 表单,我必须使用以下指令:

$response->json()['upload']['form'];

所以我考虑关闭,这张票。


推荐阅读