Newsletter2go ruby API 客户端授权 get_token 方法
Newsletter2go ruby API client authorisation with get_token method
美好的一天!
你能给我一个使用 ruby newsletetr2go API 客户端的身份验证请求示例吗?
我想不通。
我可以使用 RestClient.post "#{link}/oauth/v2/token", credentials, default_header
等直接请求连接到 API
在凭据中,我使用 username
、password
和 grant_type
,转换为 json 格式
默认情况下 header 我使用 content_type: 'application/json'
和 authorization: "Basic #{Base64.strict_encode64(ENV['NEWSLETTER2GO_AUTH_KEY'])}"
它工作正常。但是当我尝试使用 newsletter2go get_token
方法时,我收到的只是 "BAD REQUEST" 错误。
我正在使用初始化程序来配置 SwaggerClient
,如下所示:
SwaggerClient.configure do |config|
# Configure OAuth2 access token for authorization: OAuth
config.password = ENV['NEWSLETTER2GO_PASSWORD']
config.username = ENV['NEWSLETTER2GO_USERNAME']
config.api_key = ENV['NEWSLETTER2GO_AUTH_KEY']
end
之后我使用 newsletter2go api 方法调用
SwaggerClient::AuthorizationApi.new.get_token("https://nl2go.com/jwt")
似乎一切都正确,但错误 "BAD REQUEST"
一直都在发生。
我按照说明在 github 中安装 swagger_client
和 ruby 扩展,现在可以从我的 rails 环境中使用 newsletter2go 方法。
如果我手动获取 access_token
并将其添加到我的初始化程序中,然后执行一些请求,例如 SwaggerClient::ListApi.new.get_lists
它会给我一个正确的响应 status 200
和 list_ids
但是 SwaggerClient::AuthorizationApi.new.get_token("https://nl2go.com/jwt")
不起作用,这就是问题所在。
任何帮助将不胜感激!
我弄明白为什么Newsletter2Go API ruby 客户端不抓取api_key 值的原因了。出于某种原因,它被硬编码为设置基本的身份验证令牌,它代表用户名和密码打包。
这是来自
的代码
module SwaggerClient
class Configuration
# Gets Basic Auth token string
def basic_auth_token
'Basic ' + ["#{username}:#{password}"].pack('m').delete("\r\n")
end
# Returns Auth Settings hash for api client.
def auth_settings
{
'OAuth' =>
{
type: 'oauth2',
in: 'header',
key: 'Authorization',
value: "Bearer #{access_token}"
},
'Basic' =>
{
type: 'basic',
in: 'header',
key: 'Authorization',
value: basic_auth_token
},
}
end
美好的一天!
你能给我一个使用 ruby newsletetr2go API 客户端的身份验证请求示例吗?
我想不通。
我可以使用 RestClient.post "#{link}/oauth/v2/token", credentials, default_header
等直接请求连接到 API
在凭据中,我使用 username
、password
和 grant_type
,转换为 json 格式
默认情况下 header 我使用 content_type: 'application/json'
和 authorization: "Basic #{Base64.strict_encode64(ENV['NEWSLETTER2GO_AUTH_KEY'])}"
它工作正常。但是当我尝试使用 newsletter2go get_token
方法时,我收到的只是 "BAD REQUEST" 错误。
我正在使用初始化程序来配置 SwaggerClient
,如下所示:
SwaggerClient.configure do |config|
# Configure OAuth2 access token for authorization: OAuth
config.password = ENV['NEWSLETTER2GO_PASSWORD']
config.username = ENV['NEWSLETTER2GO_USERNAME']
config.api_key = ENV['NEWSLETTER2GO_AUTH_KEY']
end
之后我使用 newsletter2go api 方法调用
SwaggerClient::AuthorizationApi.new.get_token("https://nl2go.com/jwt")
似乎一切都正确,但错误 "BAD REQUEST"
一直都在发生。
我按照说明在 github 中安装 swagger_client
和 ruby 扩展,现在可以从我的 rails 环境中使用 newsletter2go 方法。
如果我手动获取 access_token
并将其添加到我的初始化程序中,然后执行一些请求,例如 SwaggerClient::ListApi.new.get_lists
它会给我一个正确的响应 status 200
和 list_ids
但是 SwaggerClient::AuthorizationApi.new.get_token("https://nl2go.com/jwt")
不起作用,这就是问题所在。
任何帮助将不胜感激!
我弄明白为什么Newsletter2Go API ruby 客户端不抓取api_key 值的原因了。出于某种原因,它被硬编码为设置基本的身份验证令牌,它代表用户名和密码打包。 这是来自
的代码module SwaggerClient
class Configuration
# Gets Basic Auth token string
def basic_auth_token
'Basic ' + ["#{username}:#{password}"].pack('m').delete("\r\n")
end
# Returns Auth Settings hash for api client.
def auth_settings
{
'OAuth' =>
{
type: 'oauth2',
in: 'header',
key: 'Authorization',
value: "Bearer #{access_token}"
},
'Basic' =>
{
type: 'basic',
in: 'header',
key: 'Authorization',
value: basic_auth_token
},
}
end