Fitbit y OAuth 2.0

Estoy tratando de agregar la integración de fitbit en una aplicación de iOS. Me sorprende descubrir lo difícil que es … Me imaginé que habría un SDK de iOS.

En cualquier caso, trato de extraer los datos a través de la API basada en la web. Utiliza OAuth 1 y 2.

He intentado ambos, pero he progresado más con OAuth 2.0.

Actualmente estoy usando AFOAuth2Manager para conectarme. Desafortunadamente, no funciona bien.

Usando el código de demostración con la información de mi count, obtengo el siguiente error:

Error de request: tipo de contenido inaceptable: text / html

Añadiendo:

OAuth2Manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/html"]; 

Ese error desaparece, pero se presenta uno nuevo:

El text JSON no comenzó con array u object y la opción para permitir fragments no configurados.

Aquí está el código que estoy usando para hacer la request:

 AFOAuth2Manager *OAuth2Manager = [[AFOAuth2Manager alloc] initWithBaseURL:baseURL clientID:@"CLIENT_ID" secret:@"CLIENT_SECRET"]; OAuth2Manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"text/html"]; [OAuth2Manager authenticateUsingOAuthWithURLString:@"/oauth2/authorize" username:USER_NAME password:USER_PASSWORD scope:@"activity" success: ^(AFOAuthCnetworkingential *cnetworkingential) { NSLog(@"Token: %@", cnetworkingential.accessToken); } failure: ^(NSError *error) { NSLog(@"Error: %@", error); }]; 

Quería intentar agregar NSJSONReadingAllowFragments. Pero no he podido includelo en el código sin error.

 //OAuth2Manager.responseSerializer.readingOptions = NSJSONReadingAllowFragments; 

En mi caso, agregué la ruta incorrecta a la URL base. Por ejemplo, mi ruta era "/ oauth / access_token".