我花了几天时间与Yahoo!实施基于OAuth的通信。为了检索用户的联系信息,我已成功构建了一个与Yahoo!完美配合的实现。我几年前创建的帐户。
现在我正在尝试检索刚刚创建的用户的联系人和Yahoo!正在返回一个令人难以置信的信息503(服务不可用)错误:
<?xml version="1.0" encoding="utf-8"?>
<error xmlns="http://social.yahooapis.com/v1/schema.rng" xmlns:yahoo="http://www.yahooapis.com/v1/base.rng" yahoo:uri="http://www.yahooapis.com/v1/errors/503" yahoo:lang="en-US">
<description>Not available</description>
<detail>new user</detail>
</error>
目前,我正在使用旧版本的Contacts API,该API通过请求查询:http://social.yahooapis.com/v1/user/{guid}/contacts?format=XML
,因此为了跟踪问题,我在{I}中测试了对新的基于YQL的机制的查询{3}}并且能够为相关用户检索联系人。我试图将我的应用程序切换为使用YQL,但出于某种原因,重新使用我为旧API准备的OAuth授权过程会在我请求http://query.yahooapis.com/v1/yql?format=xml&q=select%20*%20from%20social.contacts%20where%20guid={guid}
(或{{1}时导致401(未授权)错误}}):
guid=me
所以,我有两个问题,我很乐意回答任何一个问题:
更新
我使用原始的Contacts API进行了一些进一步的测试,看起来Yahoo!阻止检索最近创建的用户的联系人。虽然我不确定Yahoo!考虑'最近',我能够为2周前创建的用户检索联系人。为什么不在他们的文档中? :(