首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Vimeo :无法删除,因为官方SDK使用错误的url

Vimeo :无法删除,因为官方SDK使用错误的url
EN

Stack Overflow用户
提问于 2019-10-04 10:18:55
回答 1查看 314关注 0票数 0

环境

  • Debian 9
  • PHP 7.2
  • composer.json中的Vimeo包版本:“vimeo/vimeo”:"^3.0.2“
    • 解析为版本3.0.2

目标

给定一个vimeo内容url,删除视频。例如:有一个视频https://vimeo.com/12345678,我想用id 12345678删除视频

我在做什么

1. Instanciate php客户端

代码语言:javascript
运行
复制
$client = new Vimeo(
   config('dyamer.vimeo_client_id'),
   config('dyamer.vimeo_client_secret'),
   config('dyamer.vimeo_access_token')
);

这个秘密是对的,我用来上传视频和所有的作品

2.调用delete api端点

代码语言:javascript
运行
复制
$uri="https://vimeo.com/12345678";
$response = $client->request($uri, [], 'DELETE');

例外

最后一行代码抛出了一个荒谬的异常:

代码语言:javascript
运行
复制
[Could not resolve host: api.vimeo.comhttps] 
in /...project_folder.../vendor/vimeo/vimeo-api/src/Vimeo/Vimeo.php:527
Stack trace:
#0 /...project_folder.../vendor/vimeo/vimeo-api/src/Vimeo/Vimeo.php(149): Vimeo\Vimeo->_request('https://api.vim...', Array)

最后一行是用url截断显示的,这不是我复制/粘贴的错误,但我认为--这说明了Vimeo 中有些地方不对劲

问题

  • 是只发生在我身上吗?
  • 我做错了什么吗?
  • 我该如何解决这个问题呢?

旁注

我已经打开了一个关于Gihhub的问题,但没有得到sdk开发人员的任何正式回复。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-10-04 10:43:56

我成功地将错误跟踪到了一个错误of to

这是被定罪的片段实际上在这里的github

代码语言:javascript
运行
复制
            case 'DELETE':
                if ($json_body && !empty($params)) {
                    $headers['Content-Type'] = 'application/json';
                    $body = json_encode($params);
                } else {
                    $body = http_build_query($params, '', '&');
                }
                $curl_url = self::ROOT_ENDPOINT . $url;
                $curl_opts = array(
                    CURLOPT_POST => true,
                    CURLOPT_CUSTOMREQUEST => $method,
                    CURLOPT_POSTFIELDS => $body
                );
                break;

抛出我看到的$curl_url

代码语言:javascript
运行
复制
https://api.vimeo.comhttps://vimeo.com/12345678

显然是错的。

来自关于删除的官方api文档

请求 删除https://api.vimeo.com/videos/{video_id}

所以错误完全是我的

不对

代码语言:javascript
运行
复制
$uri="https://vimeo.com/12345678";
$response = $client->request($uri, [], 'DELETE');

正确的

代码语言:javascript
运行
复制
$uri="videos/12345678";
$response = $client->request($uri, [], 'DELETE');

对不起,Vimeo的员工,这是my的错,不是你的错。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58234453

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档