diff --git a/package.json b/package.json index 1239d62..32d55c8 100644 --- a/package.json +++ b/package.json @@ -37,9 +37,8 @@ "author": "Stephen Sawchuk", "license": "MIT", "dependencies": { - "axios": "^0.18.0", - "json-bigint": "^0.3.0", - "retry-axios": "0.3.2" + "gaxios": "^1.0.2", + "json-bigint": "^0.3.0" }, "devDependencies": { "@types/execa": "^0.9.0", diff --git a/src/index.ts b/src/index.ts index 862f3e3..6b606f2 100644 --- a/src/index.ts +++ b/src/index.ts @@ -5,10 +5,8 @@ * See file LICENSE for detail or copy at https://opensource.org/licenses/MIT */ -import axios from 'axios'; +import {request} from 'gaxios'; import {OutgoingHttpHeaders} from 'http'; -import * as rax from 'retry-axios'; - const jsonBigint = require('json-bigint'); export const HOST_ADDRESS = 'http://metadata.google.internal'; @@ -56,18 +54,13 @@ async function metadataAccessor( property = '/' + options.property; } validate(options); - const ax = axios.create({ - transformResponse: [t => t] // Do not use default JSON.parse. - }); - rax.attach(ax); - const reqOpts = { - url: `${BASE_URL}/${type}${property}`, - headers: Object.assign({}, HEADERS, options.headers), - raxConfig: {noResponseRetries, instance: ax}, - params: options.params - }; try { - const res = await ax.request(reqOpts); + const res = await request({ + url: `${BASE_URL}/${type}${property}`, + headers: Object.assign({}, HEADERS, options.headers), + retryConfig: {noResponseRetries}, + params: options.params + }); // NOTE: node.js converts all incoming headers to lower case. if (res.headers[HEADER_NAME.toLowerCase()] !== HEADER_VALUE) { throw new Error(`Invalid response from metadata service: incorrect ${