diff --git a/OvhApi.js b/OvhApi.js index b41293d..5d6b20e 100644 --- a/OvhApi.js +++ b/OvhApi.js @@ -38,10 +38,10 @@ export class OvhApi{ path, body={}, getMethod=rest=>rest.get, - header={accept: 'json'} + header={accept: 'json'}, + timestamp = (Date.now()/1000).toFixed() }){ if (!this.credentials.consumerKey) await this.getConsumerKey(); - let timestamp = await this.getApiTime(); header['X-Ovh-Timestamp'] = timestamp; header['X-Ovh-Signature'] = await this.getSignature({ method: getMethod(this.methods), diff --git a/setup.js b/setup.js index d6c09f7..5963e16 100644 --- a/setup.js +++ b/setup.js @@ -14,6 +14,13 @@ if (!store.ovhCredentials.applicationKey || !store.ovhCredentials.applicationSec let dns = new OvhApi({credentials: store.ovhCredentials, logs: false}); +let apiTime = await dns.getApiTime(); +let serverTime = (Date.now()/1000).toFixed(); +if (apiTime > serverTime+1 || apiTime < serverTime-1){ + console.error(`serverTime (${serverTime}) and apiTIme (${apiTime}) are different`); + process.exit(); +} + if (!store.ovhCredentials.consumerKey) await dns.getConsumerKey(); console.log('list all available records for defined domains =>');