From 80e22da1ec5b642c9c45a47eeb87b73703efdc7d Mon Sep 17 00:00:00 2001 From: 13659257719 <819781841@qq.com> Date: Wed, 24 Jan 2024 15:22:55 +0800 Subject: [PATCH 1/2] =?UTF-8?q?fix(request):=20=E4=BC=98=E5=8C=96=E8=AF=B7?= =?UTF-8?q?=E6=B1=82=E5=8F=82=E6=95=B0=E4=BD=BF=E7=94=A8=E4=BD=93=E9=AA=8C?= =?UTF-8?q?=E5=92=8C=E8=A7=A3=E5=86=B3=20URL=20=E6=8B=BC=E6=8E=A5=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/inula-request/CHANGELOG.md | 21 +++++++++++++++++++ .../examples/server/serverTest.mjs | 2 +- packages/inula-request/package.json | 3 ++- .../inula-request/src/request/fetchRequest.ts | 4 +++- .../src/utils/commonUtils/utils.ts | 2 +- 5 files changed, 28 insertions(+), 4 deletions(-) create mode 100644 packages/inula-request/CHANGELOG.md diff --git a/packages/inula-request/CHANGELOG.md b/packages/inula-request/CHANGELOG.md new file mode 100644 index 00000000..2cad0292 --- /dev/null +++ b/packages/inula-request/CHANGELOG.md @@ -0,0 +1,21 @@ +# 0.0.10 版本 + +## 新特性 + +- 新增了支持过滤请求参数中传入值为 null 时自动过滤的能力 + +## API变更 + +无 + +## Bug修复 + +- 优化了传入 params 参数为空对象时拼接 url 后携带 ? 的问题 +- +## CVE漏洞修复 + +无 + +## 已知问题 + +无 diff --git a/packages/inula-request/examples/server/serverTest.mjs b/packages/inula-request/examples/server/serverTest.mjs index 07366348..d212c0d7 100644 --- a/packages/inula-request/examples/server/serverTest.mjs +++ b/packages/inula-request/examples/server/serverTest.mjs @@ -53,7 +53,7 @@ app.get('/data', (req, res) => { }); app.get('/download', (req, res) => { - const filePath = path.resolve('./examples/request/downloadTest.html'); + const filePath = path.resolve(__dirname, '../request/downloadTest.html'); const fileName = 'downloadTest.html'; const fileSize = fs.statSync(filePath).size; diff --git a/packages/inula-request/package.json b/packages/inula-request/package.json index beac309b..239aba1c 100644 --- a/packages/inula-request/package.json +++ b/packages/inula-request/package.json @@ -12,7 +12,8 @@ }, "files": [ "/dist", - "README.md" + "README.md", + "CHANGELOG.md" ], "types": "./dist/index.d.ts", "repository": { diff --git a/packages/inula-request/src/request/fetchRequest.ts b/packages/inula-request/src/request/fetchRequest.ts index b2f598ee..8f0e5a08 100644 --- a/packages/inula-request/src/request/fetchRequest.ts +++ b/packages/inula-request/src/request/fetchRequest.ts @@ -62,7 +62,9 @@ export const fetchRequest = (config: IrRequestConfig): Promise => { // 处理请求参数 if (params) { const queryString = utils.objectToQueryString(utils.filterUndefinedValues(params)); - url = `${url}${url!.includes('?') ? '&' : '?'}${queryString}`; // 支持用户将部分请求参数写在 url 中 + if (queryString) { + url = `${url}${url!.includes('?') ? '&' : '?'}${queryString}`; // 支持用户将部分请求参数写在 url 中 + } } // GET HEAD 方法不允许设置 body diff --git a/packages/inula-request/src/utils/commonUtils/utils.ts b/packages/inula-request/src/utils/commonUtils/utils.ts index 0096c66a..2bdea467 100644 --- a/packages/inula-request/src/utils/commonUtils/utils.ts +++ b/packages/inula-request/src/utils/commonUtils/utils.ts @@ -432,7 +432,7 @@ function getObjectByArray(arr: any[]): Record { function filterUndefinedValues(obj: Record) { return Object.keys(obj).reduce((result, key) => { - if (obj[key] !== undefined) { + if (obj[key] !== undefined && obj[key] !== null) { result[key] = obj[key]; } return result; From 0903248e2f969ba1580dbe117a132e25cc90d895 Mon Sep 17 00:00:00 2001 From: 13659257719 <819781841@qq.com> Date: Wed, 24 Jan 2024 15:23:16 +0800 Subject: [PATCH 2/2] =?UTF-8?q?fix(request):=20=E4=BC=98=E5=8C=96=E8=AF=B7?= =?UTF-8?q?=E6=B1=82=E5=8F=82=E6=95=B0=E4=BD=BF=E7=94=A8=E4=BD=93=E9=AA=8C?= =?UTF-8?q?=E5=92=8C=E8=A7=A3=E5=86=B3=20URL=20=E6=8B=BC=E6=8E=A5=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/inula-request/examples/server/serverTest.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/inula-request/examples/server/serverTest.mjs b/packages/inula-request/examples/server/serverTest.mjs index d212c0d7..0797709a 100644 --- a/packages/inula-request/examples/server/serverTest.mjs +++ b/packages/inula-request/examples/server/serverTest.mjs @@ -17,7 +17,7 @@ import express from "express"; import * as fs from "fs"; import bodyParser from "body-parser"; import cors from "cors"; -import path from "path"; +import * as path from "path"; const app = express(); const port = 3001;