37信号 OAuth C# 示例
本文关键字:示例 OAuth 信号 | 更新日期: 2023-09-27 18:31:10
我需要一個完整的C#例子來描述如何使用37Signals OAuth,如下所述: http://groups.google.com/group/37signals-api/browse_thread/thread/86b0da52134c1b7e
我可以获得第 3 点中提到的限时验证码,但从那里我无法成功 POST 以兑换代码并取回令牌。
这是我到目前为止所做的,目前代码返回 401 未授权错误:
HttpWebRequest webRequest = null;
WebResponse webResponse = null;
byte[] byteArray = Encoding.UTF8.GetBytes(code);
webRequest = (HttpWebRequest)WebRequest.Create("https://launchpad.37signals.com/authorization/token?client_id=" + clientId + "&redirect_uri=" + redirectUri + "&client_secret=" + clientSecret + "&type=web_server");
webRequest.Method = "POST";
webRequest.ContentLength = byteArray.Length;
webRequest.ContentType = "application/xml','Authorization: OAuth'";
string EncryptedDetails = Convert.ToBase64String(Encoding.ASCII.GetBytes(code));
webRequest.Headers.Add("Authorization", "Token" + code);
Stream dataStream = webRequest.GetRequestStream();
dataStream.Write(byteArray, 0, byteArray.Length);
dataStream.Close();
webResponse = webRequest.GetResponse();
欢迎任何想法和建议,请:)谢谢!
我建议你使用一个为你完成协议级工作的库。我知道的最好的是 http://www.dotnetopenauth.net/
Samples
文件夹中有使用示例。