Base64在Node.js中编码和在php中解码是不同的吗?

时间:2018-07-13 08:40:06

标签: php node.js base64

我想将NodeJs中的en文件发布到PHP服务器。

为此:

0-我读取了一个文件(一个Power Point文件)

1-我将文件内容编码为base64

2-我将文件发布到PHP

3-我解码文件内容

4-我保存文件

但是在步骤4之后打开文件时,文件已损坏。有人说为什么解码不起作用?

nodejs代码:

fs.readFile(FilePath, 'utf8', function(err, data) {
                if (err) throw err;
                request.post(
                    callback_url,
                    { json: {
                        'document_id': id,
                        'document': Buffer.from(data).toString('base64'),
                        'content_type': mime.getType(resultFilePath + resultFile)
                    } },
                    function (error:any, response:any, body:any) {
                        console.log(body);
                    }
                );
            });

PHP代码:

// set the POST content in $document
$document = base64_decode($document);
file_put_contents($fileName, $document);

编辑: 错误是我读取文件时的编码... 替换

fs.readFile(FilePath, 'utf8', function(err, data) {

fs.readFile(FilePath, function(err, data) {

1 个答案:

答案 0 :(得分:0)

错误是我读取文件时的编码... 替换

fs.readFile(FilePath, 'utf8', function(err, data) {

fs.readFile(FilePath, function(err, data) {

谢谢