From d2e150a0c23be1489fa446262149986ce511579a Mon Sep 17 00:00:00 2001 From: Richard Hua Date: Mon, 10 Oct 2016 14:56:06 -0700 Subject: [PATCH] Send the CodePush plugin version with server requests (#560) This allows the server to maintain backward compatibility by distinguishing between different plugins (e.g. React Native/Cordova/Windows), as well as individual versions of these plugins, without needing to use the old SDK version (which refers to the acquisition SDK, which is shared between all plugins). This will also enable us to resolve #514, by rolling out a CDN only for newer plugin versions. (On the Cordova end at the very least, some users have plugins installed that have a whitelist of acceptable endpoints). --- request-fetch-adapter.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/request-fetch-adapter.js b/request-fetch-adapter.js index 16220db5d..48715326b 100644 --- a/request-fetch-adapter.js +++ b/request-fetch-adapter.js @@ -1,3 +1,5 @@ +const packageJson = require("./package.json"); + module.exports = { async request(verb, url, requestBody, callback) { if (typeof requestBody === "function") { @@ -8,7 +10,9 @@ module.exports = { const headers = { "Accept": "application/json", "Content-Type": "application/json", - "X-CodePush-SDK-Version": getSDKVersion() + "X-CodePush-Plugin-Name": packageJson.name, + "X-CodePush-Plugin-Version": packageJson.version, + "X-CodePush-SDK-Version": packageJson.dependencies["code-push"] }; if (requestBody && typeof requestBody === "object") { @@ -31,10 +35,6 @@ module.exports = { } }; -function getSDKVersion() { - return require("./package.json").dependencies["code-push"]; -} - function getHttpMethodName(verb) { // Note: This should stay in sync with the enum definition in // https://github.com/Microsoft/code-push/blob/master/sdk/script/acquisition-sdk.ts#L6