我正试图从asana rest api得到回应。但它返回401未经授权的错误。我使用以下代码来获得回复:
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:in`return!':401未经授权(RestClient :: Unauthorized)
请告诉您此代码的问题。
答案 0 :(得分:0)
您可以使用HTTP基本身份验证,但您需要将API密钥作为用户名(而不是密码)传递,如Developer Documentation中所述。所以,它应该看起来像:
@api_key='FcZ23.M4xsMtXmTKmDA4ssLCkEnYi'
...
:user => @api_key,
:password => ""
您可以通过帐户设置>获取API密钥;应用> API密钥。