2017-09-06 2 views
1

API를 사용하면 JSON 대신 문자열 형식 인 text/css가 반환되므로 Postman을 사용하여 해당 API를 누르면 상태와 함께 전체 CSS 데이터가 반환됩니다. 코드 200하지만 HTTPI 나 다른 라이브러리를 사용하여 동일한 API를 사용하면 상태 코드 302가 "올바른 방향으로 향하는 하이퍼 링크가 리디렉션 됨으로 리디렉션 됨"이라는 메시지가 나타납니다. 여기"리디렉션되는 중"상태 코드 302 레일

내가 GET 요청하기 위해 HTTPI을 사용하고 방법은 다음과 같습니다

url = "https://<some-end-point>" 
request = HTTPI::Request.new 
request.url = url 
request.headers = {"Content-Type"=>"text/css","Authorization"=>" 
<authorised token>","api_version"=>"1"} 
response = HTTPI.get(request) 
puts response 

답변

0

많은 노력 후를, 나는 리디렉션 HTTPI 지원되지 않았 음을 발견했다. 그래서 그것을 해결하기 위해 난 리디렉션을 처리

오픈 URI 사용.

require 'open-uri' 

url = "https://<some-end-point>" 
headers = {"Content-Type"=>"text/css","Authorization"=>"<authorised token>","api_version"=>"1"} 
buffer = open(url,header).read