gpt4 book ai didi

c# - Yahoo Sports API 问题

转载 作者:太空狗 更新时间:2023-10-29 22:01:30 31 4
gpt4 key购买 nike

我正在尝试设置一个使用 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

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

我不确定这是什么意思,我正在将我的身份验证信息传递给 api,但似乎我需要更多权限。有没有人有这方面的工作示例。如果需要,我可以为 GetUrl 方法提供代码,但它或多或少是从这里复制粘贴的

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

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

最佳答案

我无法使用 YQL 使其正常工作,但我能够通过直接使用位于 https://fantasysports.yahooapis.com/fantasy/v2/ 的 API 获取球员数据和选秀结果等。

例如获取 NFL 球员大卫约翰逊的详细信息:

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

主机:fantasysports.yahooapis.com

授权:Bearer [[Base64编码的ClientId:Secret]]

内容类型:application/json

关于c# - Yahoo Sports API 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9877486/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com