diff --git a/packages/nodes-base/nodes/SeaTable/GenericFunctions.ts b/packages/nodes-base/nodes/SeaTable/GenericFunctions.ts index 267e9390f1..4f39075bbd 100644 --- a/packages/nodes-base/nodes/SeaTable/GenericFunctions.ts +++ b/packages/nodes-base/nodes/SeaTable/GenericFunctions.ts @@ -129,7 +129,7 @@ export async function getBaseAccessToken(this: IExecuteFunctions | ILoadOptionsF export function resolveBaseUri(ctx: ICtx) { return (ctx?.credentials?.environment === 'cloudHosted') - ? 'https://cloud.seatable.io' : ctx?.credentials?.domain; + ? 'https://cloud.seatable.io' : userBaseUri(ctx?.credentials?.domain); } export function simplify(data: { results: IRow[] }, metadata: IDataObject) { @@ -292,3 +292,12 @@ export const split = (subject: string): string[] => .filter(s => s.length) .map(s => s.replace(/\\([\s\S])/gm, ($0, $1) => $1)) ; + +const userBaseUri = (str?: string) => { + if (str === undefined) { + return str; + } + let end = str.length; + for (; end > 0 && str[end - 1] === '/'; --end) {} + return end < str.length ? str.substring(0, end) : str; +};