使用OAuth令牌查看Vimeo私有视频

JMa*_*ues 42 java oauth vimeo scribe http-status-code-401

任何人都可以使用scribe在Vimeo API中提供帮助吗?我的目标是访问私人视频(我上传),而不必强迫用户输入密码(此过程应在后台完成).

从我的理解/从研究中推断是必要的:

  1. 使用oAuth协议并通过以下链接请求申请授权:

    https://vimeo.com/oauth/authorize?oauth_token=XXXX

    此操作成功执行,响应数据发送到回调URL,如:

    http://127.0.0.1:8001/XPTO.html?oauth_token=AUTH_TOKEN_EXAMPLE&oauth_verifier=VERIFIIER__EXAMPLE"

  2. 根据Brad Dougherty(Vimeo API Staff)的说法,可以做类似的事情

    如果您自己完成OAuth流程,则可以保存该令牌并使用该令牌进行调用.

我正在使用此代码:

service = new ServiceBuilder().provider(VimeoApi.class)
                .apiKey("API_KEY_EXAMPLE")
                .apiSecret("API_SECRET_EXAMPLE")
                .build();

OAuthRequest request = new OAuthRequest(Verb.GET,
        "http://vimeo.com/api/rest/v2?video_id=50305416");

request.addQuerystringParameter("format", "json");
request.addQuerystringParameter("method", "vimeo.videos.getInfo");

String oauth_verifier=VERIFIER__EXAMPLE;
Verifier verifier = new Verifier(oauth_verifier);

//I've tried differents combination to create this token
//I believe that my problem is HERE
//One unsuccessfully try: Token requestToken = service.getRequestToken();
Token requestToken = new Token(
        AUTH_TOKEN_EXAMPLE,
        API_SECRET_EXAMPLE);

Token token = service.getAccessToken(requestToken, verifier);

service.signRequest(token, request); 
Response response = request.send();
Run Code Online (Sandbox Code Playgroud)

我有以下错误:

响应正文不正确.无法从中提取令牌和秘密:'401 Unauthorized - 无效签名 - 传递的oauth_signature无效.

什么在逃避我?这是正确的方法,对吗?

pp9*_*p94 0

首先要注意发布视频所需的权限,因此在尝试对其进行身份验证之前。第二个想法是将所有内容存储在内存或本地存储中。您可以向其插入属性以直接启动视频