diff --git a/packages/app/src/providers/app-state-provider/dynamic-blocksuite.tsx b/packages/app/src/providers/app-state-provider/dynamic-blocksuite.tsx index 04611c2d70..51455b7978 100644 --- a/packages/app/src/providers/app-state-provider/dynamic-blocksuite.tsx +++ b/packages/app/src/providers/app-state-provider/dynamic-blocksuite.tsx @@ -92,7 +92,7 @@ const DynamicBlocksuite = ({ (indexDBProvider as IndexedDBDocProvider)?.on('synced', async () => { const updates = await downloadWorkspace({ workspaceId }); - if (updates.byteLength) { + if (updates && updates.byteLength) { Workspace.Y.applyUpdate(workspace.doc, new Uint8Array(updates)); // if after update, the space:meta is empty, then we need to get map with doc workspace.doc.getMap('space:meta'); diff --git a/packages/data-services/src/request/request/authorization/authorization.ts b/packages/data-services/src/request/request/authorization/authorization.ts index 04d135f224..1009971cd5 100644 --- a/packages/data-services/src/request/request/authorization/authorization.ts +++ b/packages/data-services/src/request/request/authorization/authorization.ts @@ -94,6 +94,10 @@ export async function setAuthorization(config: AxiosRequestConfig) { } if (isAccessTokenExpired(token.accessToken)) { await refreshToken(); + token = getToken(); + } + if (!token) { + throw new Error('No authorization token.'); } if (!config.headers) { config.headers = {}; diff --git a/packages/data-services/src/sdks/workspace.ts b/packages/data-services/src/sdks/workspace.ts index 23e843ea26..155cbef12b 100644 --- a/packages/data-services/src/sdks/workspace.ts +++ b/packages/data-services/src/sdks/workspace.ts @@ -199,7 +199,7 @@ export async function downloadWorkspace( responseType: 'arraybuffer', }); - return data.data; + return data?.data; } export async function uploadBlob(params: { blob: Blob }): Promise {