基于crypto.subtle.exportKey("spki", cryptoKey)我想把返回的ArrayBuffer
转换成一个字符串,这样我就可以把它变成一个base64字符串。根据文档,我尝试了
const bufferAsString = String.fromCharCode.apply(null, new Uint8Array(buffer));
但是TypeScript告诉我
TS2345:类型为Uint8Array的参数不能赋值给类型为number[]的参数。
如何修复类型错误?
在调用函数时使用参数扩展,而不是使用apply (playground):
String.fromCharCode(...new Uint8Array(buf));
您可以使用扩展语法或Array.from
将Uint8Array
转换为常规数组。
String.fromCharCode.apply(null, [...new Uint8Array(buffer)]);