From 18ef7f49affd2656cdba26fe21078f46ca1e0cc5 Mon Sep 17 00:00:00 2001 From: fengmk2 Date: Fri, 3 Nov 2023 18:52:08 +0800 Subject: [PATCH] fix: should set access-control-allow-origin and headers (#606) --- app/port/controller/package/DownloadPackageVersionTar.ts | 2 ++ .../package/DownloadPackageVersionTarController.test.ts | 4 ++++ 2 files changed, 6 insertions(+) diff --git a/app/port/controller/package/DownloadPackageVersionTar.ts b/app/port/controller/package/DownloadPackageVersionTar.ts index 6295227f..123ad8ee 100644 --- a/app/port/controller/package/DownloadPackageVersionTar.ts +++ b/app/port/controller/package/DownloadPackageVersionTar.ts @@ -30,6 +30,8 @@ export class DownloadPackageVersionTarController extends AbstractController { method: HTTPMethodEnum.OPTIONS, }) async downloadForOptions(@Context() ctx: EggContext) { + ctx.set('access-control-allow-origin', '*'); + ctx.set('access-control-allow-methods', 'GET,HEAD'); ctx.status = 204; } diff --git a/test/port/controller/package/DownloadPackageVersionTarController.test.ts b/test/port/controller/package/DownloadPackageVersionTarController.test.ts index 2715f114..bd1a9702 100644 --- a/test/port/controller/package/DownloadPackageVersionTarController.test.ts +++ b/test/port/controller/package/DownloadPackageVersionTarController.test.ts @@ -61,9 +61,13 @@ describe('test/port/controller/package/DownloadPackageVersionTarController.test. let res = await app.httpRequest() .options(`/${name}/-/testmodule-download-version-tar-1.0.0.tgz`); assert.equal(res.status, 204); + assert.equal(res.headers['access-control-allow-origin'], '*'); + assert.equal(res.headers['access-control-allow-methods'], 'GET,HEAD'); res = await app.httpRequest() .options(`/${scopedName}/-/testmodule-download-version-tar-1.0.0.tgz`); assert.equal(res.status, 204); + assert.equal(res.headers['access-control-allow-origin'], '*'); + assert.equal(res.headers['access-control-allow-methods'], 'GET,HEAD'); }); if (process.env.CNPMCORE_NFS_TYPE !== 'oss') {