diff --git a/src/client.js b/src/client.js index ef24110..a235fc8 100644 --- a/src/client.js +++ b/src/client.js @@ -101,7 +101,7 @@ export default class Client { } url(path) { - return `${this.api.baseUri}/${path}?secret=${this.api.secret}`; + return `${this.api.baseUri}${path}?secret=${this.api.secret}`; } static handleError(error) { diff --git a/src/index.js b/src/index.js index d6f911e..3caa520 100644 --- a/src/index.js +++ b/src/index.js @@ -2,7 +2,7 @@ import path from 'path'; import pkg from '../package.json'; import Task from './task'; import Client from './client'; -import { getReadableStream } from './utils'; +import { getReadableStream, normalizeBaseUri } from './utils'; function ConvertAPI(secret, options = {}) { if (!(this instanceof ConvertAPI)) { @@ -10,7 +10,7 @@ function ConvertAPI(secret, options = {}) { } this.secret = secret; - this.baseUri = options.baseUri || 'https://v2.convertapi.com'; + this.baseUri = normalizeBaseUri(options.baseUri || 'https://v2.convertapi.com/'); this.conversionTimeout = options.conversionTimeout; this.conversionTimeoutDelta = options.conversionTimeoutDelta || 10; this.uploadTimeout = options.uploadTimeout || 1800; diff --git a/src/utils.js b/src/utils.js index 4e54632..433845c 100644 --- a/src/utils.js +++ b/src/utils.js @@ -21,6 +21,14 @@ export const normalizeFilesParam = async (promise) => { return Promise.all(value); }; +export const normalizeBaseUri = (baseUri) => { + if (baseUri[baseUri.length - 1] !== '/') { + return `${baseUri}/`; + } + + return baseUri; +}; + export const buildFileParam = async (api, value) => { if (URI_REGEXP.test(value)) { return value;