From 9d42ffab9760cd07666b574ba499f8be92651187 Mon Sep 17 00:00:00 2001
From: Pavel Kolesnikov <pavel.kolesnikov@gmail.com>
Date: Sun, 11 Dec 2016 00:48:35 -0800
Subject: [PATCH] Proxy rewrites Origin header to match the target server URL
 (#1212)

* Proxy rewrites Origin header to match the target server URL

* Added comments on rewriting Origin header by the proxy middleware
---
 packages/react-scripts/scripts/start.js | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/packages/react-scripts/scripts/start.js b/packages/react-scripts/scripts/start.js
index 752bd8a08..3e71e2de8 100644
--- a/packages/react-scripts/scripts/start.js
+++ b/packages/react-scripts/scripts/start.js
@@ -201,6 +201,14 @@ function addMiddleware(devServer) {
     var hpm = httpProxyMiddleware(pathname => mayProxy.test(pathname), {
       target: proxy,
       logLevel: 'silent',
+      onProxyReq: function(proxyReq, req, res) {
+        // Browers may send Origin headers even with same-origin
+        // requests. To prevent CORS issues, we have to change
+        // the Origin to match the target URL.
+        if (proxyReq.getHeader('origin')) {
+          proxyReq.setHeader('origin', proxy);
+        }
+      },
       onError: onProxyError(proxy),
       secure: false,
       changeOrigin: true,
-- 
GitLab