JSON API에 요청하는 작은 Rails 앱을 개발하고, 매개 변수를 초기 양식에 도입하고, 실제 응답을 받았는지 확인한 다음 결과를 렌더링해야하는지 확인해야합니다 보기 (html.erb)로.JSON API 요청 앱 (레일), 렌더링 결과
이 단계를 수행하기 위해 어디에서 좋은 자료를 얻을 수 있습니까? 어떤 도움도 환영합니다.
params_string = "whatever"
params_string_with_api_key = params_string + "&" + @@API_KEY
hashkey = Digest::SHA1.hexdigest(params_string_with_api_key)
params_string += "&hashkey=#{hashkey}"
res = Net::HTTP.get_response("api.somecompany.com", "/some/url.json?#{params_string}")
res_sha1 = Digest::SHA1.hexdigest(res.body + @@API_KEY)
@verified = res["X-Somecompany-Response-Signature"] == res_sha1
parsed_json = ActiveSupport::JSON.decode(res.body)
@results = parsed_json["results"]
는 항상 당신이 인터넷 :: HTPP 요청을 수행 할 때 매개 변수 문자열을 인코딩 할 필요가 :
는 좀 가까운 예를 읽고 있어요? 다른 방법이 있습니까?
정확히 params_string += "&hashkey=#{hashkey}"
은 무엇입니까?
감사합니다.
Typhoeus에 대한 질문 : Typhoeus에서 가져온 것과 같은 방법으로'res.body'를 사용하여 NET :: HTTP를 사용할 수 있습니까? 위의 예제에서이 라인을 전환해야합니까? res = Net :: HTTP.get_response ("api.somecompany.com", "/some/url.json?#{params_string} ") Typhoeus를 사용하는 코드는 어떻게됩니까? –
Typhoeus README는이 정보에 대해 매우 완벽합니다. 'Typhoeus :: Hydra' 인스턴스에 대기열에 넣고 실행시킨'Typhoes :: Request' 객체를 사용할 수 있습니다. 아니면'res = Typhoeus :: Request.get (url, ...)'을 사용하여 "빠른"방법을 사용할 수 있습니다. 어쨌든 일단 응답을 받으면 바로 지금 사용하고있는 것처럼'reponse.body '를 사용할 수 있습니다. – ksol