Не могу отправить файл в MailChimp

Я пытался загрузить CSV-файл в mailChimp и использовать его для загрузки его в Facebook Messenger с помощью node.js. Я могу просто создать файл, используя модуль csv-write-stream. После создания файла csv я использую модуль под названием "js-base64-file" для кодирования содержимого файла в base64 и загрузки его в mailchimp, а также сохранения его в объект с обязательными полями "name" и "file_data" для отправьте его с запросом POST, вот так:

    base64.load('', file, (err, data) => {
            console.log(`err: ${err}`); // no error
            console.log(`Data: ${data}`); // not null nor undefined
            const dataString = `{"name":${file} , "file_data":${data}}`;

            console.log(`dataString: ${dataString}`); // not null nor undefined

            const options = {
                url: apiUri,
                method: 'POST',
                'content-type': 'application/json',
                body: dataString,
                auth: {
                    user: apiUser,
                    pass: apiKey,
                },
            };
    Request(options, (error, response, body) => {
                const obj = JSON.parse(body);
                console.dir(body);
                console.log(`full_size_url: ${obj.full_size_url}`);
                next();
            });
});

Я на 100% уверен, что base64 находит и кодирует содержимое файла, потому что он либо предупреждает меня, когда не может найти файл, либо возвращает пустую строку, если есть какие-либо проблемы, мой объект "options" для запроса также работает, потому что я используя его для успешной загрузки pdf-файла в mailChimp (также работает запрос GET), переменные аутентификации apiUri, apiName и apiKey также являются правильными. К сожалению, это не работает. Тело отвечает, я получаю это

'{"type":"http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/","title":"Invalid Resource","status":400,"detail":"The resource submitted could not be validated. For field-specific details, see the \'errors\' array.","instance":"270198c8-f3b8-4c4f-bdb8-872321470b17","errors":[{"field":"","message":"Schema describes object, NULL found instead"}]}',

Есть идеи? Я застрял на этом в течение нескольких дней, любое возможное решение будет высоко ценится.

0 ответов

Другие вопросы по тегам