2011-04-25 3 views
0

Привет всем Я пытаюсь заставить мое приложение rails поговорить с Windows LIVE (через OAuth Wrap), чтобы я мог получить список контактов. Для этого я использую камень rest_client. Вот код действия для него:Ruby rest_client и windows LIVE connect OAUTH Wrap

 

def hotmail 

    app_id = 'some_id' 
    app_sec = 'some_secret' 
    app_callback = 'http://my.callback.com/same/as/getting/verification_code' 
    app_var = params[:wrap_verification_code] 

    encoded = "wrap_client_id=#{app_id}&wrap_client_secret=#{app_sec}&wrap_verification_code=#{app_var}&wrap_callback=#{app_callback}".encode!('UTF-8') 

    begin 
    r = RestClient.post("https://consent.live.com/AccessToken.aspx", encoded.bytes.to_a, {:content_type => 'application/x-www-form-urlencoded', :content_length => encoded.bytesize}) 
    rescue => e 
     puts e.message 
    end 
    render :text => 'hello' 
    end 
 

Я основываю это на C#, например http://msdn.microsoft.com/en-us/library/ff750952.aspx (примечание: http://www.goatly.net/2010/12/23/401-unauthorized-when-acquiring-an-access-token-windows-live-sdk.aspx показывает правильную полезную нагрузку)

Однако я получаю 401 Несанкционированное, так что я имею в виду путь Я неправильно использую rest_client? Во время сообщения формы есть что-то еще, что мне нужно сделать?

ЛЮБЫЕ подсказки будут действительно полезны :) Спасибо заранее.

ответ

1

Обнаружена проблема. Код C# говорит, что он отправляет массив байтов, но это не так, просто после того, как закодировано st direct достаточно.

 Смежные вопросы

  • Нет связанных вопросов^_^