From 966e0812f5e4f0b7668ec138c670aacd3dca8735 Mon Sep 17 00:00:00 2001 From: mochi33i Date: Thu, 12 Jun 2025 16:54:59 +0900 Subject: [PATCH] =?UTF-8?q?fix(misskey-js)=20:=20misskey-js=E3=81=AE=20dri?= =?UTF-8?q?ve/file/create=20=E3=81=A7=E3=83=95=E3=82=A1=E3=82=A4=E3=83=AB?= =?UTF-8?q?=E3=82=A2=E3=83=83=E3=83=97=E3=83=AD=E3=83=BC=E3=83=89=E3=81=8C?= =?UTF-8?q?=E3=81=A7=E3=81=8D=E3=81=AA=E3=81=84=E5=95=8F=E9=A1=8C=E3=82=92?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3=20(#16028)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(misskey-js): drive/file/createが動かない問題を修正 * CHANGELOG.mdに修正内容を追加 --- CHANGELOG.md | 2 ++ packages/misskey-js/src/api.ts | 2 +- packages/misskey-js/test/api.ts | 8 ++------ 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 174a36e349..4c4388617f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,6 +18,8 @@ - Fix: アカウント削除が正常に行われないことがあった問題を修正 - Fix: outboxのページネーションが正しく行われない問題を修正 +### Misskey.js +- Fix: misskey-jsの drive/file/create でファイルアップロードができない問題を修正 ## 2025.6.0 diff --git a/packages/misskey-js/src/api.ts b/packages/misskey-js/src/api.ts index 437518f60b..e64f1a048c 100644 --- a/packages/misskey-js/src/api.ts +++ b/packages/misskey-js/src/api.ts @@ -106,7 +106,7 @@ export class APIClient { this.fetch(`${this.origin}/api/${endpoint}`, { method: 'POST', body: payload, - headers: { + headers: mediaType === 'multipart/form-data' ? {} : { 'Content-Type': mediaType, }, credentials: 'omit', diff --git a/packages/misskey-js/test/api.ts b/packages/misskey-js/test/api.ts index 1a7574de25..b8ad2225c8 100644 --- a/packages/misskey-js/test/api.ts +++ b/packages/misskey-js/test/api.ts @@ -94,11 +94,7 @@ describe('API', () => { fetchMock.resetMocks(); fetchMock.mockResponse(async (req) => { if (req.method == 'POST' && req.url == 'https://misskey.test/api/drive/files/create') { - if (req.headers.get('Content-Type')?.includes('multipart/form-data')) { - return JSON.stringify({ id: 'foo' }); - } else { - return { status: 400 }; - } + return JSON.stringify({ id: 'foo' }); } else { return { status: 404 }; } @@ -123,7 +119,7 @@ describe('API', () => { expect(getFetchCall(fetchMock.mock.calls[0])).toEqual({ url: 'https://misskey.test/api/drive/files/create', method: 'POST', - contentType: 'multipart/form-data', + contentType: undefined, body: { i: 'TOKEN', file: testFile,