0
Я иду через Фарадея, чтобы сделать запрос. Я использую FakeWeb для завершения запроса.Почему я получаю Net :: HTTPBadResponse с этим кодом Ruby?
Фарадея код
middleware = [
Faraday::Request::UrlEncoded,
AirbrakeAPI::Middleware::RaiseResponseError,
FaradayMiddleware::Mashify,
FaradayMiddleware::ParseXml,
AirbrakeAPI::Middleware::ScrubResponse,
AirbrakeAPI::Middleware::RaiseServerError]
@connection ||= Faraday.new(default_options.deep_merge(connection_options)) do |builder|
middleware.each { |mw| builder.use *mw }
builder.adapter :net_http
builder.response :json, :content_type => /\bjson$/
fakeweb код
DEFAULTS = {:content_type => "application/json; charset=utf-8", :status => ["200", "OK"]}
def fixture_request(verb, url, file)
FakeWeb.register_uri(verb, url, DEFAULTS.merge(:response => File.join(File.dirname(__FILE__), 'fixtures', file)))
end
fixture_request :get, "http://example.com/notices.json", 'notices.json'
notices.json файл
HTTP/1.1 200 OK
Content-Type: application/json
Date: Sun, 20 Mar 2016 05:24:04 GMT
Transfer-Encoding: chunked
{
"notices": [
{
"id": "1",
"projectId": 1,
"groupId": "1696170",
"createdAt": "2014-10-22T03:00:00.407Z"
},
{
"id": "2",
"projectId": 1,
"groupId": "1234",
"createdAt": "2014-10-22T03:00:00.407Z"
}
],
"count": 2
}
двутавровых ошибка получить:
# Net::HTTPBadResponse:
# wrong header line format
В файле notices.json, если удалить строки 1-4 (строка 1 = HTTP/1.1 200 OK), то я до сих пор получаю эту ошибку:
# Net::HTTPBadResponse:
# wrong status line: "{"