我正在使用Node.js上传Image api。 如果我发布一个3kb的base64字符串,工作正常。 但是如果我发布一个高达300kb或更高的字符串,它会显示:
TypeError:“value”参数超出范围 在checkInt(buffer.js:1178:11) 在Buffer.writeUInt16LE(buffer.js:1236:5) 在WritableTrackingBuffer.writeUInt16LE(/Users/usr/Desktop/Money/node_modules/tedious/lib/tracking-buffer/writable-tracking-buffer.js:87:19) 在WritableTrackingBuffer.writeUsVarbyte(/Users/usr/Desktop/Money/node_modules/tedious/lib/tracking-buffer/writable-tracking-buffer.js:243:12) at Object.writeParameterData(/Users/usr/Desktop/Money/node_modules/tedious/lib/data-type.js:942:25) 在新的RpcRequestPayload(/Users/usr/Desktop/Money/node_modules/tedious/lib/rpcrequest-payload.js:95:12) 在Connection.callProcedure(/Users/usr/Desktop/Money/node_modules/tedious/lib/connection.js:961:58) 在parent.acquire(/Users/usr/Desktop/Money/node_modules/mssql/lib/tedious.js:1022:20)
这是我的api代码,我正在使用'fs','js-base64'模块。 我已经尝试了谷歌,但找不到任何解决方案。
var base64Data = tmp.base64.replace(/^data:image\/png;base64,/, "");
fs.writeFile('img/'+Name, base64Data, 'base64',
function(err) {
if(err) {
res.send(err);
}
else
{
res.send('okay');
}
});