2017-09-10 18 views
0

내 데이터에 액세스 할 때 adafruit API를 사용하려고합니다.ruby ​​on rails의 httparty에 api 키 추가

현재 내가 시도 및 액세스 나는 다음과 같은 메시지를받을 때

{ "오류": "을 (를) 찾을 수 없습니다 - API 문서는 https://io.adafruit.com/api/docs에서 찾을 수 있습니다"}

나는이 생각 나는 천국으로 인해 ' t 키를 추가했습니다 (adafruit 예제 페이지에서 키를 사용하지 않으면 동일한 메시지가 나타남).하지만 어디에 추가할지 모릅니다.

현재, 난 그냥 내 컨트롤러이 있습니다 : 사전에

def index 

    @tests = HTTParty.get('https://io.adafruit.com/api/v2/username/myfeed/test/data') 

end 

감사를 X

+0

해당 API에 API 키가 필요한 위치는 어디입니까? 헤더, 쿼리 매개 변수 등입니까? 어쨌든 질문 매개 변수 또는 헤더를 추가하는 방법에 대한 관련 질문에 대해서는 [이 답변] (https://stackoverflow.com/a/35925296/8255744)을 확인하십시오. 특히 헤더와 관련하여 질문이 있더라도 –

답변

0

https://learn.adafruit.com/adafruit-io/browser 매개 변수에 대한의 문서에 따르면

def index 

    @tests = HTTParty.get('https://io.adafruit.com/api/v2/username/myfeed/test/data?key_id=your_key_id') 

end 
+0

그래도 여전히 같은 문제가 있습니까? –

0

으로 코드를 변경하십시오 열쇠는 X-AIO-Key입니다. 내가 쿼리 매개 변수 또는 헤더를 사용하여 다음 조합이 작동해야한다고 말하면 이론 상 개인적으로 시도하지 않았습니다.

@tests = HTTParty.get('https://io.adafruit.com/api/v2/username/myfeed/test/data', :headers => { 'content-type': 'application/json', 'X-AIO-Key': 'yourkey' }) 

@tests = HTTParty.get('https://io.adafruit.com/api/v2/username/myfeed/test/data', {:headers => { 'content-type': 'application/json'}, :query => {'X-AIO-Key': 'yourkey' }}) 

https://github.com/adafruit/io-client-ruby에서 V1 API를 사용하는 루비 클라이언트 라이브러리가있다. 병합되지 않은 v2의 풀 요청이 있지만 해당 라이브러리는 httparty 대신 faraday를 사용합니다.