fix(next-cloud-node): Fix issue with credential verification and sharing file

This commit is contained in:
Michael Kret 2022-08-19 16:35:01 +03:00 committed by GitHub
parent 11617616cd
commit 2b4f5c6c78
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 8 additions and 4 deletions

View file

@ -21,8 +21,7 @@ export async function nextCloudApiRequest(
headers?: object,
encoding?: null | undefined,
query?: object,
// tslint:disable-next-line:no-any
): Promise<any> {
) {
const resource = this.getNodeParameter('resource', 0);
const operation = this.getNodeParameter('operation', 0);
const authenticationMethod = this.getNodeParameter('authentication', 0);
@ -49,10 +48,15 @@ export async function nextCloudApiRequest(
}
options.uri = `${credentials.webDavUrl}/${encodeURI(endpoint)}`;
if (resource === 'user' && operation === 'create') {
options.uri = options.uri.replace('/remote.php/webdav', '');
}
if (resource === 'file' && operation === 'share') {
options.uri = options.uri.replace('/remote.php/webdav', '');
}
const credentialType =
authenticationMethod === 'accessToken' ? 'nextCloudApi' : 'nextCloudOAuth2Api';

View file

@ -1,5 +1,5 @@
import { IExecuteFunctions } from 'n8n-core';
import { NodeApiError } from 'n8n-workflow';
import { IBinaryKeyData, NodeApiError } from 'n8n-workflow';
import {
IDataObject,
@ -1139,7 +1139,7 @@ export class NextCloud implements INodeType {
// Create a shallow copy of the binary data so that the old
// data references which do not get changed still stay behind
// but the incoming data does not get changed.
Object.assign(newItem.binary, items[i].binary);
Object.assign(newItem.binary as IBinaryKeyData, items[i].binary);
}
items[i] = newItem;