Skip to content

Commit deabd5f

Browse files
committed
update Fitbit oauth2 url. closes #2
1 parent 068cbd7 commit deabd5f

File tree

4 files changed

+19
-8
lines changed

4 files changed

+19
-8
lines changed

src/auth.js

+2-2
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ module.exports = function(proto) {
88
return tokenObj;
99
}
1010

11-
return this.oauth2.accessToken.create(tokenObj);
11+
return this.oauth2_token.accessToken.create(tokenObj);
1212
};
1313

1414
proto.getAuthorizationUrl = function(redirect_uri, scope, state) {
@@ -27,7 +27,7 @@ module.exports = function(proto) {
2727

2828
proto.getToken = function(code, redirect_uri) {
2929

30-
var authCode = this.oauth2.authCode;
30+
var authCode = this.oauth2_token.authCode;
3131
var _this = this;
3232
return new Promise(function(resolve, reject) {
3333

src/client.js

+9
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,15 @@ var FitbitClient = function(clientId, consumerSecret, options) {
2626
useBasicAuthorizationHeader: true
2727
});
2828

29+
this.oauth2_token = oauth2({
30+
clientID: clientId,
31+
clientSecret: consumerSecret,
32+
site: config.FITBIT_BASE_API_URL_TOKEN,
33+
authorizationPath: config.FITBIT_AUTH_PATH,
34+
tokenPath: config.FITBIT_TOKEN_PATH,
35+
useBasicAuthorizationHeader: true
36+
});
37+
2938
this.redirect_uri = options.redirect_uri;
3039
this.scope = options.scope || config.FITBIT_DEFAULT_SCOPE;
3140

src/config.js

+4-2
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
const FITBIT_BASE_API_URL = 'https://api.fitbit.com';
1+
const FITBIT_BASE_API_URL = 'https://fitbit.com';
2+
const FITBIT_BASE_API_URL_TOKEN = 'https://api.fitbit.com';
23
const FITBIT_AUTH_PATH = '/oauth2/authorize';
34
const FITBIT_TOKEN_PATH = '/oauth2/token';
45
const FITBIT_DEFAULT_SCOPE = [ 'activity', 'nutrition', 'profile', 'settings', 'sleep', 'social', 'weight' ];
@@ -7,5 +8,6 @@ module.exports = {
78
FITBIT_BASE_API_URL: FITBIT_BASE_API_URL,
89
FITBIT_AUTH_PATH: FITBIT_AUTH_PATH,
910
FITBIT_TOKEN_PATH: FITBIT_TOKEN_PATH,
10-
FITBIT_DEFAULT_SCOPE: FITBIT_DEFAULT_SCOPE
11+
FITBIT_DEFAULT_SCOPE: FITBIT_DEFAULT_SCOPE,
12+
FITBIT_BASE_API_URL_TOKEN: FITBIT_BASE_API_URL_TOKEN
1113
};

test/auth.js

+4-4
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@ describe('FitbitClient Authorization flow', function() {
1515

1616
it('it has a default authorization url', function() {
1717
var authorization_uri = client.getAuthorizationUrl();
18-
var final_url = 'https://api.fitbit.com/oauth2/authorize?redirect_uri=http%3A%2F%2Fredirect_uri&scope=activity&scope=nutrition&scope=profile&scope=settings&scope=sleep&scope=social&scope=weight&response_type=code&client_id=clientId_1234';
18+
var final_url = 'https://fitbit.com/oauth2/authorize?redirect_uri=http%3A%2F%2Fredirect_uri&scope=activity&scope=nutrition&scope=profile&scope=settings&scope=sleep&scope=social&scope=weight&response_type=code&client_id=clientId_1234';
1919

2020
expect(authorization_uri).to.eql(final_url);
2121
});
2222

2323
it('accept a different redirect_uri for authorization', function() {
2424
var redirect_uri = 'http://different_redirect_uri';
2525
var authorization_uri = client.getAuthorizationUrl(redirect_uri);
26-
var final_url = 'https://api.fitbit.com/oauth2/authorize?redirect_uri=http%3A%2F%2Fdifferent_redirect_uri&scope=activity&scope=nutrition&scope=profile&scope=settings&scope=sleep&scope=social&scope=weight&response_type=code&client_id=clientId_1234';
26+
var final_url = 'https://fitbit.com/oauth2/authorize?redirect_uri=http%3A%2F%2Fdifferent_redirect_uri&scope=activity&scope=nutrition&scope=profile&scope=settings&scope=sleep&scope=social&scope=weight&response_type=code&client_id=clientId_1234';
2727

2828
expect(authorization_uri).to.eql(final_url);
2929
});
@@ -33,7 +33,7 @@ describe('FitbitClient Authorization flow', function() {
3333
var scope = config.FITBIT_DEFAULT_SCOPE;
3434
scope.push('heartrate');
3535
var authorization_uri = client.getAuthorizationUrl(redirect_uri, scope);
36-
var final_url = 'https://api.fitbit.com/oauth2/authorize?redirect_uri=http%3A%2F%2Fdifferent_redirect_uri&scope=activity&scope=nutrition&scope=profile&scope=settings&scope=sleep&scope=social&scope=weight&scope=heartrate&response_type=code&client_id=clientId_1234';
36+
var final_url = 'https://fitbit.com/oauth2/authorize?redirect_uri=http%3A%2F%2Fdifferent_redirect_uri&scope=activity&scope=nutrition&scope=profile&scope=settings&scope=sleep&scope=social&scope=weight&scope=heartrate&response_type=code&client_id=clientId_1234';
3737

3838
expect(authorization_uri).to.eql(final_url);
3939
});
@@ -44,7 +44,7 @@ describe('FitbitClient Authorization flow', function() {
4444
scope.push('heartrate');
4545
var state = 'KEEP_THIS_STATE';
4646
var authorization_uri = client.getAuthorizationUrl(redirect_uri, scope, state);
47-
var final_url = 'https://api.fitbit.com/oauth2/authorize?redirect_uri=http%3A%2F%2Fdifferent_redirect_uri&scope=activity&scope=nutrition&scope=profile&scope=settings&scope=sleep&scope=social&scope=weight&scope=heartrate&scope=heartrate&state=KEEP_THIS_STATE&response_type=code&client_id=clientId_1234';
47+
var final_url = 'https://fitbit.com/oauth2/authorize?redirect_uri=http%3A%2F%2Fdifferent_redirect_uri&scope=activity&scope=nutrition&scope=profile&scope=settings&scope=sleep&scope=social&scope=weight&scope=heartrate&scope=heartrate&state=KEEP_THIS_STATE&response_type=code&client_id=clientId_1234';
4848

4949
expect(authorization_uri).to.eql(final_url);
5050
});

0 commit comments

Comments
 (0)