2014-09-22 108 views
1

我想从asana rest api得到响应。但它返回401未经授权的错误。我使用下面的代码来获得响应:使用rest_client进行身份验证,401未经授权的asana api

require 'base64' 
    require 'rest_client' 
    @user='mailid' 
    @pass='YWlzNydXNoMTIz\n' 
    @url="https://app.asana.com" 
    response = RestClient::Request.new(
    :method => :get, 
    :url => @url + "/" + "api/1.0/users/me", 
    :user => @user, 
    :password => Base64.decode64(@pass), 

).execute 
    @results = JSON.parse(response.to_str) 
    p @results 

我收到此错误/.rvm/gems/ruby-2.1.0/gems/rest-client-1.6.7/lib/restclient/abstract_response。 rb:48:在`return!'中:401未经授权(RestClient :: Unauthorized)

请告诉这个代码的问题。

回答

0

可以使用HTTP基本认证,但您需要传递API密钥作为Developer Documentation中所述的用户名(和无密码)。所以,它应该看起来像这样:

@api_key='FcZ23.M4xsMtXmTKmDA4ssLCkEnYi' 
... 
:user => @api_key, 
:password => "" 

您可以从您的帐户设置>应用程序> API密钥获取您的API密钥。

相关问题