【问题标题】:Withings API not redirecting to my callback url (PHP / OAuth)Withings API 未重定向到我的回调 url (PHP / OAuth)
【发布时间】:2015-03-11 15:06:59
【问题描述】:

我正在遵循here 提供的指南,以便通过 OAuth 协议永久访问 Withings 帐户。一切正常,直到第二步的最后一部分:

授权此令牌:
...然后用户允许通过单击 “允许”按钮,他将被重定向到您设置的回调 url 在这一步的开始。 ...

但是,当用户点击允许时,我不会被重定向到我的回调 URL。相反,我被定向到带有 oauth_token 和 oauth_verifier 的“Access Granted”Withings 页面。

请帮忙?

他们的例子如下:

> https://oauth.withings.com/account/authorize?

> oauth_callback=http%3A%2F%2Fexample.com%2Fget_access_token
> &oauth_consumer_key=c331c571585e7c518c78656f41582e96fc1c2b926cf77648223dd76424b52b
> &oauth_nonce=369f9ceb2f285ac637c9a7e9e98019bd
> &oauth_signature=OR9J9iEl%2F2yGOXP2wk5c2%2BWtYvU%3D
> &oauth_signature_method=HMAC-SHA1 
> &oauth_timestamp=1311778988
> &oauth_token=5bb105d2292ff43ec9c0f633fee9033045ed4643e9871b80ce586dc1bf945
> &oauth_version=1.0

虽然我的电话看起来像这样:

> https://oauth.withings.com/account/authorize?

> oauth_callback=http%3A%2F%2Fmysite.com
> &oauth_consumer_key=myConsumerKey
> &oauth_nonce=1234 
> &oauth_signature=6mQ5iICsxxJyunjrGlZLMFNbUQA%3D
> &oauth_signature_method=HMAC-SHA1 
> &oauth_timestamp=1376934855
> &oauth_token=myOauthToken
> &oauth_version=1.0

这是我的 php 代码:

$callback_uri = rawurlencode("http://www.mysite.com");
$authorization_uri = 
"https://oauth.withings.com/account/authorize?" . 
'oauth_callback=' . $callback_uri . 
'&oauth_consumer_key=' .  $oauth_params['oauth_consumer_key'] .
'&oauth_nonce=' .  $oauth_params['oauth_nonce']  .
'&oauth_signature=' .  rawurlencode($oauth_signature) .
'&oauth_signature_method=' .  $oauth_params['oauth_signature_method'] .
'&oauth_timestamp=' .  $oauth_params['oauth_timestamp'] .
'&' . $token . 
'&oauth_version=' .  $oauth_params['oauth_version'];

header("Location: " . $authorization_uri);

【问题讨论】:

    标签: php api oauth withings


    【解决方案1】:

    哇...好吧。我终于得到了这个。我花了一段时间才弄清楚。

    显然,回调 url 必须在请求令牌步骤(步骤 1)而不是授权步骤(步骤 2)中提供。所以上面的一切仍然是正确的。

    【讨论】:

    • 这对我有帮助。他们的示例代码不起作用。我不得不将“callback_url”更改为“oauth_callback”。除了授权步骤之外,我还必须在请求令牌步骤中传递它。从供应商处获得损坏的示例代码非常令人沮丧。
    • 您介意在答案中突出显示正确的用法......还是您是否编辑了原始问题以进行正确设置?
    猜你喜欢
    • 1970-01-01
    • 2013-07-11
    • 1970-01-01
    • 2015-04-24
    • 2015-08-28
    • 2018-11-05
    • 2013-10-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多