如何使用 c# 连接到 Asana Rest API
本文关键字:Asana Rest API 连接 何使用 | 更新日期: 2023-09-27 18:32:08
有没有人有一段代码来使用 c# 连接到 Asana API?
他们的网站上有一个 Hello World 应用程序,但不幸的是它是用红宝石写的。
https://asana.com/developers/documentation/examples-tutorials/hello-world
我把它作为一个快速的副项目来做,只能投入少量时间。任何帮助将不胜感激。
提前感谢!
跟进:
我已经尝试了多种访问/身份验证方式,但不断收到 401 未授权错误。
我的最新代码如下所示:
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://app.asana.com/api/1.0/users/me");
request.Method = "GET";
request.Headers.Add("Authorization: Basic " + "*MyUniqueAPIKey*");
request.ContentType = "application/x-www-form-urlencoded";
request.Accept = "application/json";
WebResponse ws = request.GetResponse();
试试这段代码。 我能够使用它获得用户列表:
const string apiKey = "whateverYourApiKeyIs";
public string GetUsers()
{
var req = WebRequest.Create("https://app.asana.com/api/1.0/users");
SetBasicAuthentication(req);
return new StreamReader(req.GetResponse().GetResponseStream()).ReadToEnd();
}
void SetBasicAuthentication(WebRequest req)
{
var authInfo = apiKey + ":";
var encodedAuthInfo = Convert.ToBase64String(
Encoding.Default.GetBytes(authInfo));
req.Headers.Add("Authorization", "Basic " + encodedAuthInfo);
}
这仅将数据作为字符串返回。 解析 JSON 留给读者作为练习。 ;)
我从这里借用了SetBasicAuthentication
方法:
强制对 HttpWebRequest 进行基本 http 身份验证(在 .NET/C# 中)
你可以尝试使用我的库,AsanaNet :)
https://github.com/acron0/AsanaNet
你需要做HTTP请求,有很多这样的教程 http://msdn.microsoft.com/en-us/library/debx8sh9(v=vs.80).aspx