Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/315.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用c#连接到Asana Rest API?_C#_.net_Asana - Fatal编程技术网

如何使用c#连接到Asana Rest API?

如何使用c#连接到Asana Rest API?,c#,.net,asana,C#,.net,Asana,有人有使用c#连接Asana API的代码片段吗 他们的网站上有一个Hello World应用程序,但不幸的是它是用ruby编写的 我这样做是作为一个快速的副项目,只能花一小部分时间。任何帮助都将不胜感激 提前谢谢 后续行动: 我尝试了多种访问/身份验证的方法,但不断出现401未授权错误 我的最新代码如下所示: HttpWebRequest request = (HttpWebRequest)WebRequest.Create("https://app.asana.com/api/1.0/u

有人有使用c#连接Asana API的代码片段吗

他们的网站上有一个Hello World应用程序,但不幸的是它是用ruby编写的

我这样做是作为一个快速的副项目,只能花一小部分时间。任何帮助都将不胜感激

提前谢谢


后续行动:

我尝试了多种访问/身份验证的方法,但不断出现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();

你需要做HTTP请求,像这样的教程太多了

试试这段代码。我可以通过它获得用户列表:

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
方法:


您可以尝试使用我的库AsanaNet:)


您是否执行了将“API密钥加冒号”转换为base64的步骤?在上面的示例中,没有,但我已尝试过转换。同样的错误。是否还有其他Asana的.net包装程序仍然处于活动状态?