Jeff Gentry의 R 및 ROAuth 패키지를 사용하여 fitbit에서 데이터를 가져오고 인증이 작동하지 않는 것 같습니다.ROAuth R 및 FitBit API 오류 : 승인 헤더가 제공되지 않음
apiURL = 'api.fitbit.com/'
credentials = OAuthFactory$new(consumerKey=key,
consumerSecret=secret,
requestURL=tokenURL,
accessURL=accessTokenURL,
authURL=authorizeURL
)
을 한 후 나는 악수를 실행합니다 : 코드는 다음과 같이 자격 증명 집합을 찾고 적절한 결과
> credentials$handshake()
To enable the connection, please direct your web browser to:
http://www.fitbit.com/oauth/authorize?oauth_token=036afa88a832bfffc72af485e38c1572
When complete, record the PIN given to you and provide it here:
완전한 권한을하고 oauth_verifier 토큰에 붙여 넣습니다.
마지막으로 나는 난 후 프로파일 데이터를 얻을려고 :
rawToChar(credentials$OAuthRequest(paste(apiURL,"1/user/userID/profile.json", sep="", collapse=''), "GET"))
을 그리고 응답이 얻을 : 당신이하지 않았다면
[1] "{\"errors\":[{\"errorType\":\"oauth\",\"fieldName\":\"n/a\",\"message\":\"No
Authorization header provided in the request. Each call to Fitbit API should be OAuth
signed\"}]}"
여전히 승인 헤더를 올바르게 전송할 수 없습니다 (문제라고 생각합니다). oauthGET 함수의 어딘가에 몇 가지 추가 .opts를 설정해야하지만 어느 것이 있는지 파악할 수는 없습니다. RCurl의 저자 인 Duncan Lang에게 그가 알고 있는지 알아보기 위해 글쓰기. –
DTL은 실제로 ROAuth를 인수하는 사람 중 하나이므로 다른 버전으로 0.99.2 버전 (현재의 devel 버전)에 대해 물어볼 수 있습니다. – geoffjentry
약간의 진전을 이루었습니다. fitbit의 경우 Oauth 매개 변수를 값으로 전달하기 전에 따옴표로 묶어야합니다. RCurl에 대해 verbose = T 옵션을 켜고 더 유용한 정보를 얻습니다. –