You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@apisix.apache.org by ju...@apache.org on 2020/05/22 07:24:56 UTC
[incubator-apisix-dashboard] branch next updated: feature: change
request prefix (#208)
This is an automated email from the ASF dual-hosted git repository.
juzhiyuan pushed a commit to branch next
in repository https://gitbox.apache.org/repos/asf/incubator-apisix-dashboard.git
The following commit(s) were added to refs/heads/next by this push:
new 4b256d7 feature: change request prefix (#208)
4b256d7 is described below
commit 4b256d7e33d6298fd0116ddc7e358a925428fe37
Author: bzp2010 <bz...@gmail.com>
AuthorDate: Fri May 22 15:24:51 2020 +0800
feature: change request prefix (#208)
* feature: change request prefix
* fix: clean codes
* fix: change API server path
* feat: added SSLModule (#209)
* feat: added SSLModule
* feat: split routes
* feat: update CurrentUser
* feat: update SSL
* fix: remove the prefix in netlify demo
* feature: change request prefix
* fix: clean codes
* fix: change API server path
* fix: remove the prefix in netlify demo
* fix: resolve the conflict
Co-authored-by: 琚致远 <ju...@apache.org>
---
config/config.ts | 10 ++++++++--
src/app.tsx | 4 +---
src/pages/ssl/service.ts | 8 ++++----
src/typings.d.ts | 8 +++++++-
src/utils/setting.ts | 1 +
5 files changed, 21 insertions(+), 10 deletions(-)
diff --git a/config/config.ts b/config/config.ts
index 5380df3..ab1862e 100644
--- a/config/config.ts
+++ b/config/config.ts
@@ -4,7 +4,12 @@ import defaultSettings from './defaultSettings';
import proxy from './proxy';
import routes from './routes';
-const { REACT_APP_ENV } = process.env;
+const { REACT_APP_ENV, NODE_ENV } = process.env;
+
+const getRequestPrefix = () => {
+ if (NODE_ENV === 'development') return '/api';
+ return '';
+};
export default defineConfig({
hash: true,
@@ -35,8 +40,9 @@ export default defineConfig({
REACT_APP_ENV: REACT_APP_ENV || false,
ADMIN_API_SCHEMA: 'http',
ADMIN_API_HOST: '127.0.0.1:9080',
- ADMIN_API_PATH: '/apisix/admin/',
+ ADMIN_API_PATH: '/apisix/admin',
API_KEY: '',
+ API_REQUEST_PREFIX: getRequestPrefix(),
},
// Theme for antd: https://ant.design/docs/react/customize-theme-cn
theme: {
diff --git a/src/app.tsx b/src/app.tsx
index e94290a..9e5d5fd 100644
--- a/src/app.tsx
+++ b/src/app.tsx
@@ -85,12 +85,10 @@ const errorHandler = (error: { response: Response; data: any }): Promise<Respons
const adminAPIConfig = getAdminAPIConfig();
export const request: RequestConfig = {
+ prefix: `${adminAPIConfig.schema}://${adminAPIConfig.host}${adminAPIConfig.path}${adminAPIConfig.prefix}`,
errorHandler,
credentials: 'same-origin',
headers: {
- 'X-ADMIN-API-SCHEMA': adminAPIConfig.schema,
- 'X-ADMIN-API-HOST': adminAPIConfig.host,
- 'X-ADMIN-API-PATH': adminAPIConfig.path,
'X-API-KEY': adminAPIConfig.key,
},
};
diff --git a/src/pages/ssl/service.ts b/src/pages/ssl/service.ts
index 922d2b2..c699570 100644
--- a/src/pages/ssl/service.ts
+++ b/src/pages/ssl/service.ts
@@ -2,18 +2,18 @@ import { request } from 'umi';
import { transformFetchListData, transformFetchItemData } from '@/transforms/global';
export const fetchList = () =>
- request('/api/ssl').then((data) => transformFetchListData<SSLModule.SSL>(data));
+ request('/ssl').then((data) => transformFetchListData<SSLModule.SSL>(data));
export const fetchItem = (key: string) =>
- request(`/api/ssl/${key}`).then((data) => transformFetchItemData<SSLModule.SSL>(data));
+ request(`/ssl/${key}`).then((data) => transformFetchItemData<SSLModule.SSL>(data));
export const remove = (key: string) =>
- request(`/api/ssl/${key}`, {
+ request(`/ssl/${key}`, {
method: 'DELETE',
});
export const create = (data: SSLModule.SSL) =>
- request('/api/ssl', {
+ request('/ssl', {
method: 'POST',
data,
});
diff --git a/src/typings.d.ts b/src/typings.d.ts
index 5db98a3..6eb33dc 100644
--- a/src/typings.d.ts
+++ b/src/typings.d.ts
@@ -37,11 +37,17 @@ declare let ANT_DESIGN_PRO_ONLY_DO_NOT_USE_IN_YOUR_PRODUCTION: 'site' | undefine
declare const REACT_APP_ENV: 'test' | 'dev' | 'pre' | false;
-declare let ADMIN_API_SCHEMA; let ADMIN_API_HOST; let ADMIN_API_PATH; let API_KEY: '';
+declare let ADMIN_API_SCHEMA;
+declare let ADMIN_API_HOST;
+declare let ADMIN_API_PATH;
+declare let API_KEY: '';
+declare let API_REQUEST_PREFIX: '';
+
declare interface AdminAPIConfig {
schema: string;
host: string;
path: string;
+ prefix: string;
key: string;
}
diff --git a/src/utils/setting.ts b/src/utils/setting.ts
index 86c4f37..9b5898c 100644
--- a/src/utils/setting.ts
+++ b/src/utils/setting.ts
@@ -3,6 +3,7 @@ export const getAdminAPIConfig = (): AdminAPIConfig => {
schema: localStorage.getItem('GLOBAL_ADMIN_API_SCHEMA') || ADMIN_API_SCHEMA,
host: localStorage.getItem('GLOBAL_ADMIN_API_HOST') || ADMIN_API_HOST,
path: localStorage.getItem('GLOBAL_ADMIN_API_PATH') || ADMIN_API_PATH,
+ prefix: API_REQUEST_PREFIX,
key: localStorage.getItem('GLOBAL_ADMIN_API_KEY') || API_KEY
};
}