来自其他Android应用程序的vimeo视频上传的“无效状态”

时间:2015-11-17 10:31:30

标签: android vimeo-api

我正在尝试从我的Android应用程序上传视频到vimeo。该视频正在上传。但是当调用Delete请求以获取视频ID时,我收到的响应为“Invalid state”。同一段代码在Htc X中工作。这是视频编解码器格式或其他问题吗?

这是我的删除请求代码

public void vimeoDelete() {

    // Vimeo upload step 3

    RestClient.mEndPoint.setUrl(APIHandler.VIMEO_BASE_URL);
    RestClient.getVimeo().deleteVideo(mCompleteUri.substring(1), new Callback<Response>() {
        @Override
        public void success(Response response, Response response2) {
            Log.i("Delete", "Done");
            Log.i("Header", response2.getHeaders().toString());
            Log.i("Body", response2.getBody().toString());
            List<Header> aHeaders = response2.getHeaders();
            for (Header aHeader : aHeaders) {
                if (aHeader.getName().equals("Location")) {
                    mVideoUrlLocation = aHeader.getValue();

                }
            }
            Log.i("Location", mVideoUrlLocation);
            mFinalVideoUrl = mVideoUrlLocation.substring(8);
            saveDetails();
        }

        @Override
        public void failure(RetrofitError error) {
            mProgress.dismiss();

        }
    });

}

任何人都可以建议解决这个问题。

此致

1 个答案:

答案 0 :(得分:0)

我刚刚在Vimeo论坛上回答了同样的问题 - 我遇到了同样的问题,我只是在这里发布,因为在这个特定的线程上似乎没有解决方案。

此外,关于您的帖子 - 您的帖子中没有提供大量信息。您的删除请求并非完全符合要求 - 假设您创建了有效的故障单请求,正确上传,然后尝试了您发布的del请求。

Vimeo帖子: https://vimeo.com/forums/api/topic:278394

我的解决方案: 我解决了我的问题版本 - 我认为Vimeo最近纠正了他们的API上的一些东西,因为我的代码没有错误,然后最近突然出现了一个。我敢打赌,他们在API网关上添加了速率限制,或者可能覆盖现有的请求来清理旧请求......

无论如何,这是我的修复:

通过&#34; Resumable HTTP PUT上传&#34;完成视频上传。 (developer.vimeo.com/api/upload/videos),有5个步骤。

除了通过我的PHP后端上传外,我做的一切都是。我通过PHP请求票证,不通过我修改的JS前端(github.com/websemantics/vimeo-upload)暴露一些秘密信息,但我没有通过JS代码正确编辑票证请求,所以当前的错误可能是在第二个无效请求(即通过PHP覆盖或限制我的初始有效请求)。一旦我绕过JS&#34;上传&#34;功能正常并直接跳到JS&#34; sendFile _&#34;,上传再次正常工作。

希望能帮到那里的人!