JSON API用のRubyラッパーを作成しています。成功した投稿がそのエンドポイントに送信されると、特定のタイプの応答が期待されています...しかし、実際に応答を得る方法がわかりません。ファラデーからの応答をテストするにはどうすればよいですか?
私はこのようなファラデーを使用しています:
@connection ||= Faraday.new do |f|
f.url_prefix = "https://myapiurl.com/api/auth"
f.adapter :net_http
f.headers['User-Agent'] = "Some-Awesome-User-Agent"
f.headers['Content-Type'] = content_type
f.headers['Accept'] = api_version
f.params['API-KEY'] = api_key if api_key
f.response :json, content_type: /\bjson$/
end
私は@connection.post
を行うときしかし、私はSSLのエラーを取得しておいてください。
@connection.post
Faraday::SSLError: SSL_connect returned=1 errno=0 state=error: certificate verify failed
私は間違っていないよ場合は、私が修正することができたら、 SSLエラーが発生しました。私は正しい動作をすることができる応答オブジェクトを受け取るべきですか?
編集1
私はrvm 1.27.0 (latest)
とともに、これは以下のように私のGemfile.lock
が見えるものでも、ruby 2.3.1
をOpenSSL 0.9.8zh 14 Jan 2016
を使用しています:あなたはあなたのSSL証明書ため、このエラーが出る
PATH
remote: .
specs:
mygem (0.1.0)
GEM
remote: https://rubygems.org/
specs:
coderay (1.1.1)
diff-lcs (1.2.5)
faraday (0.9.2)
multipart-post (>= 1.2, < 3)
faraday_middleware (0.10.0)
faraday (>= 0.7.4, < 0.10)
json (2.0.2)
method_source (0.8.2)
multipart-post (2.0.0)
pry (0.10.4)
coderay (~> 1.1.0)
method_source (~> 0.8.1)
slop (~> 3.4)
rake (10.5.0)
rspec (3.5.0)
rspec-core (~> 3.5.0)
rspec-expectations (~> 3.5.0)
rspec-mocks (~> 3.5.0)
rspec-core (3.5.1)
rspec-support (~> 3.5.0)
rspec-expectations (3.5.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.5.0)
rspec-mocks (3.5.0)
diff-lcs (>= 1.2.0, < 2.0)
rspec-support (~> 3.5.0)
rspec-support (3.5.0)
slop (3.6.0)
PLATFORMS
ruby
DEPENDENCIES
bundler (~> 1.11)
faraday (~> 0.9.2)
faraday_middleware (~> 0.10.0)
json (~> 2.0, >= 2.0.2)
mygem
pry (~> 0.10.4)
rake (~> 10.0)
rspec (~> 3.0)
rspec-expectations (~> 3.5)
BUNDLED WITH
1.12.5