首页 文章

MapMyFitness API OAuth问题

提问于
浏览
0

我在使用MapMyFitness API时遇到了一些问题 . MapMyFitness使用OAuth 1.0

我能够通过调用3.1 / oauth / request_token成功获得临时授权令牌/临时秘密令牌组合

之后,我能够成功地将用户定向到“授权”页面,并使用授权验证程序获得重定向回调 .

在那之后,我很遗憾地在尝试调用3.1 / oauth / access_token时遇到错误 . (HTTP错误401)

首先,MMF文档(http://api.mapmyfitness.com/3.1/oauth/access_token?doc)声明:为访问令牌交换请求令牌和授权验证者 . 但是,文档中的输入参数列表不包含oauth_verifier . 我收到的带有重定向回调的oauth_verifier是否应该作为参数传递给access_token调用?

其次,在我看来,也许我没有正确创建签名 . 对于3.1 / oauth / request_token调用,生成签名的密钥是“XXX&”,其中XXX是MapMyFitness分配给我的应用程序的消费者密钥 . 这很好用 . 对于3.1 / oauth / access_token调用,我使用'XXX&YYY'作为签名密钥,其中XXX是MapMyFitness分配给我的应用程序的消费者密钥,YYY是服务器在3.1 / oauth期间返回给我的临时秘密令牌/ request_token调用 . 那是对的吗?

我非常感谢任何建议 .

1 回答

  • 0

    好的,我搞定了 . 首先,oauth_verifier需要作为参数的一部分包含在内 . 出于某种原因,Map My Fitness不会将其包含在所需参数列表中,但必须存在 . 其次 - 非常重要 - 根据OAuth 1.0文档,在创建签名时,所有参数都需要按字母顺序排列 - 否则会出现签名不匹配,并且您将收到HTTP 401错误 . 一旦我按字母顺序对参数进行排序,我就可以将临时MapMyFitness凭证交换为永久凭证 .

相关问题