37 Сигналы OAuth C# пример

Мне нужен полный 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();

Любые идеи и предложения приветствуются, пожалуйста:) Спасибо!

1 ответ

Решение

Я предлагаю вам использовать библиотеку, которая выполняет работу на уровне протокола. Лучший из тех, кого я знаю, это http://www.dotnetopenauth.net/

Есть примеры использования в Samples папка.

Другие вопросы по тегам