Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js JSFORCE:不支持文件从sfdc rest api下载文件并在本地磁盘上写入时显示消息_Node.js_Rest_Salesforce_Workbench_Jsforce - Fatal编程技术网

Node.js JSFORCE:不支持文件从sfdc rest api下载文件并在本地磁盘上写入时显示消息

Node.js JSFORCE:不支持文件从sfdc rest api下载文件并在本地磁盘上写入时显示消息,node.js,rest,salesforce,workbench,jsforce,Node.js,Rest,Salesforce,Workbench,Jsforce,我一直在尝试使用JS force for node JS下载图像文件,并能够在检索数据并将其转换为base64格式后在本地创建一个文件,但如果显示“文件不受支持的消息”,则可以下载具有正确数据的javascript类型的文件 我正在查询salesforce中知识文章的附件字段 以下是我的疑问: SELECT Body__c, Attachment__Name__s, Attachment__ContentType__s, Attachment__Length__s, Attachment__Bo

我一直在尝试使用JS force for node JS下载图像文件,并能够在检索数据并将其转换为base64格式后在本地创建一个文件,但如果显示“文件不受支持的消息”,则可以下载具有正确数据的javascript类型的文件

我正在查询salesforce中知识文章的附件字段

以下是我的疑问:

SELECT Body__c, Attachment__Name__s, Attachment__ContentType__s, Attachment__Length__s, Attachment__Body__s, Id, KnowledgeArticleId, Title, UrlName FROM Knowledge__kav
我正在将GET请求发送到文章的附件\uuuuuu\uu s字段

以下是我的节点js代码:

function createFile(attachmentBody,attachmntContentType,attachmntName){
var req = {
url: attachmentBody,
method: 'GET',
headers: {
        "Content-Type": attachmntContentType
        }
    };
            
var test = conn.request(req, function(err, resp) {
    if (err) {
        console.log(err)
        } else {
                        
var fileBuffer=Buffer.from(resp, 'binary').toString('base64');
console.log('fileBuffer---  '+ fileBuffer);
fs.writeFile('./downloadedAttachments/'+attachmntName,fileBuffer,'base64', function(err){
    if (err) throw err
        console.log('File saved.')
        })
            
    }
});
}

请帮我解决这个问题。

我成功下载了正确格式的文件。以下是我的更新代码:

函数createFile(knbid、AttachmentName、回调){
var file_here=conn.sobject('Knowledge__kav')。记录(knbid);
文件在此处。\retrieve(函数(err,response){
如果(错误){
返回控制台。错误(err);
回调(0)
}否则{
var obj=fs.createWriteStream('./downloadeAttachments/'+AttachmentName,{defaultEncoding:'binary'})
//log('blob--'+JSON.stringify(file_-here.blob('Attachment__-Body__-s'));
var stream=file_here.blob('Attachment__Body___s').pipe(obj);
stream.on('finish',函数(err,result){
如果(错误)
console.log('未下载'+knbid);
其他的
console.log('download-'+knbid);
})
}
});
}