Yahoo Sports API问题

我正在尝试设置一个使用Yahoo Fantasy体育API的简单应用程序,并允许通过YQL执行查询。

class Program { static void Main(string[] args) { string yql = "select * from fantasysports.games where game_key in ('268')"; //var xml = QueryYahoo(yql); // Console.Write(xml.InnerText); string consumerKey = "--my key--"; string consumerSecret = "--my secret--"; var xml = QueryYahoo(yql, consumerKey, consumerSecret); Console.Write(xml.InnerText); } private static XmlDocument QueryYahoo(string yql) { string url = "http://query.yahooapis.com/v1/public/yql?format=xml&diagnostics=false&q=" + Uri.EscapeUriString(yql); var req = System.Net.HttpWebRequest.Create(url); var xml = new XmlDocument(); using (var res = req.GetResponse().GetResponseStream()) { xml.Load(res); } return xml; } private static XmlDocument QueryYahoo(string yql, string consumerKey, string consumerSecret) { string url = "http://query.yahooapis.com/v1/yql?format=xml&diagnostics=true&q=" + Uri.EscapeUriString(yql); url = OAuth.GetUrl(url, consumerKey, consumerSecret); var req = System.Net.HttpWebRequest.Create(url); var xml = new XmlDocument(); using (var res = req.GetResponse().GetResponseStream()) { xml.Load(res); } return xml; } 

这里有一些隐藏的东西,我有一个自定义类来为Yahoo API创建url。 以下是OAuth.GetUrl()方法返回的URL的结构

http://query.yahooapis.com/v1/yql?diagnostics=true&format=xml&oauth_consumer_key=mykey&oauth_nonce=rlfmxniesu&oauth_signature_method=HMAC-SHA1&oauth_timestamp=1332785286&oauth_version=1.0&q=select%20%2A%20from%20fantasysports.games%20where%20game_key%20in %20%28%27268 27%29%&oauth_signature = NYKIbhjoirJwB6ADxVq5DOgLW1w%3D

有了这个,我似乎总是得到身份validation错误。 表fantasysports.games需要比提供的更高的安全级别,您提供的APP但至少是USER

我不确定这意味着什么,我将我的身份validation信息传递给api,但似乎我需要更多权限。 有没有人有这方面的工作实例。 如果需要,我可以为GetUrl方法提供代码,但它或多或少是来自此处的复制粘贴

http://andy.edinborough.org/Getting-Started-with-Yahoo-and-OAuth

如果您有任何疑问,请告诉我。 谢谢!

我无法使用YQL工作,但我能够直接使用https://fantasysports.yahooapis.com/fantasy/v2/上的API获取玩家数据和草稿结果等

例如,获得NFL球员David Johnson的详细信息:

GET /fantasy/v2/players;player_keys=371.p.28474 HTTP / 1.1

主持人:fantasysports.yahooapis.com

授权:承载[[Base64编码ClientId:秘密]]

Content-Type:application / json