簡體   English   中英

OAuth使用Scribe與Vimeo集成

[英]OAuth integration with Vimeo using Scribe

我已經能夠使用Scribe API從Vimeo成功獲取訪問令牌。

但是,當我嘗試訪問受保護的資源時,我收到無效的簽名錯誤。 我用來嘗試訪問受保護資源的OAuthService ,如下所示:

OAuthService service = new ServiceBuilder()
    .provider(VimeoApi.class)
    .apiKey(APIKEY)
    .apiSecret(API_SECRET)
    .signatureType(SignatureType.QueryString)
    .build();

然后,我發出請求,執行以下操作:

  OAuthRequest orequest = new OAuthRequest(Verb.GET, "http://vimeo.com/api/rest/v2");
  orequest.addBodyParameter("method", "vimeo.videos.upload.getQuota");

這失敗了,告訴我簽名無效。

問題是,

  orequest.addBodyParameter("method", "vimeo.videos.upload.getQuota");

Scribe然后將此參數添加到用於形成簽名的基本字符串。 Vimeo看到我正在進行GET並且method參數在請求體中而不是查詢字符串,因此它沒有將它包含在基本字符串中。 因此,預期的簽名Vimeo與Scribe生成的簽名不同。

我正在做一個GET所以我應該在查詢字符串上傳遞這個參數,

  orequest.addQuerystringParameter("method", "vimeo.videos.upload.getQuota");

這有效,如下:

  OAuthRequest orequest = new OAuthRequest(Verb.POST, "http://vimeo.com/api/rest/v2");
  orequest.addBodyParameter("method", "vimeo.videos.upload.getQuota");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM