未知客户端访问 Eve API
Unknown client accessing Eve API
我正在尝试访问 Eve Online 的 CREST API。我正在尝试通过 SSO 获得授权,如下所述:
http://eveonline-third-party-documentation.readthedocs.io/en/latest/sso/authentication.html
我从初始回调中获得了授权代码,但是在发送 post 请求以获取授权令牌时出现了问题。响应的body是
"error"=>"invalid_client", "error_description"=>"Unknown client"
我正在使用 Unirest,我认为我的 headers 没有任何问题。我错过了什么吗?这里有一个愚蠢的错误吗?
headers = { "Authorization" => "Basic #{auth_head}",
"Content-Type" => "application/json",
"Accept" => "application/json",
"Host" => "login.eveonline.com"
}
params = { "grant_type" => "authorization_code",
"code" => "#{auth_code}"
}
response = Unirest.post "https://login.eveonline.com/oauth/token",
headers:headers,
parameters:params.to_json
auth_head是使用Ruby中的Base64编码库的Base64编码字符串。客户端 ID 和密钥 hard-coded 转换成 Base64,所以我也不确定问题出在哪里。
我发布这篇文章已经有一段时间了,但以防万一有人遇到这个具体问题,我的问题是 Base64 编码包含换行符 [\n
]。从字符串中删除它们后,一切正常。如果您遇到的资源告诉您可以包含它们,我不能对其他 API 说这个,但是对于这个肯定不行。
我正在尝试访问 Eve Online 的 CREST API。我正在尝试通过 SSO 获得授权,如下所述: http://eveonline-third-party-documentation.readthedocs.io/en/latest/sso/authentication.html
我从初始回调中获得了授权代码,但是在发送 post 请求以获取授权令牌时出现了问题。响应的body是
"error"=>"invalid_client", "error_description"=>"Unknown client"
我正在使用 Unirest,我认为我的 headers 没有任何问题。我错过了什么吗?这里有一个愚蠢的错误吗?
headers = { "Authorization" => "Basic #{auth_head}",
"Content-Type" => "application/json",
"Accept" => "application/json",
"Host" => "login.eveonline.com"
}
params = { "grant_type" => "authorization_code",
"code" => "#{auth_code}"
}
response = Unirest.post "https://login.eveonline.com/oauth/token",
headers:headers,
parameters:params.to_json
auth_head是使用Ruby中的Base64编码库的Base64编码字符串。客户端 ID 和密钥 hard-coded 转换成 Base64,所以我也不确定问题出在哪里。
我发布这篇文章已经有一段时间了,但以防万一有人遇到这个具体问题,我的问题是 Base64 编码包含换行符 [\n
]。从字符串中删除它们后,一切正常。如果您遇到的资源告诉您可以包含它们,我不能对其他 API 说这个,但是对于这个肯定不行。