Kotlin 使用 window.fetch API 获取二进制数据

丹尼斯·沃洛欣

我的目标是在多平台项目的JS实际类中实现Http请求调用。

http 请求应该返回一个二进制数据

我的Response公共类看起来很简单

class Response(val binaryData: ByteArray) {
    var code: Int = 0
    var message: String? = null
    var headers: Map<String, String>? = null
    var body: ByteArray = binaryData
}

数据应作为ByteArray提供

现在获取逻辑看起来像

actual class Call(var request: Request) {
    actual fun enqueue(responseCallback: Callback) {
        window.fetch(request.url).then(onFulfilled = { response ->
            response.arrayBuffer().then(onFulfilled = {
                responseCallback.onResponse(this, Response(it))
            }, onRejected = { error ->
                responseCallback.onFailure(this, Exception(error.message))
            })

    }
}

所述response.arrayBuffer()具有ArrayBuffer类型而在响应(它)应ArrayByte

我尝试谷歌搜索了一段时间。不幸的是,我没有找到任何解决方案。

谁能帮我解决转换类型的问题

提前致谢

罗马艺术

如果我理解你的porblem纠正妥善的解决办法可能是建立Int8ArrayArrayBuffer投下它ByteArray喜欢这个

Int8Array(it).unsafeCast<ByteArray>()

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用 Magick Wand API 从图像中获取二进制数据

如何使用fetch和FormData发送二进制数据(blob)?

使用jQuery从二进制数据获取图像

有没有一种方法可以在不使用canvas API的情况下从图像文件获取二进制数据?

转换二进制流使用ghostscript API

如何使用 fetch 在 react-native-image-crop-picker 中上传二进制文件

Google 将使用照片引用检索的 API 图像放置在返回二进制数据的 Web 应用程序中

使用ASP.NET Web API下载二进制数据时出现AngularJS GET byte []错误

使用 fetch 从 api 接收数据

尝试使用 fetch 从 API 获取数据

如何使用 fetch 从 api 获取数据

如何从(v1.0)Get Photo API获取*二进制照片数据*?

使用二进制掩码获取多个数据帧(段)

如何使用Golang获取发布的二进制数据的文件名?

使用 C# 从 CouchDB 中获取大的二进制数据

如何使用PHP从二进制Blob数据中获取BMP图像

外部服务的创建API。发送二进制数据

使用MarkLogic REST API将文本文件加载为二进制文件

使用JavaScript FileReader API上载二进制文件时遇到问题

无法使用Azure DevOps Rest API上传图像(二进制)

如何使用ASP.net Web API和Javascript下载二进制文件?

如何使用图片的二进制格式上传到Imgur(API v3)?

我应该如何使用PHP编写的RESTful api提供二进制文件(图像/音频)?

使用 Python C API 版本 2 和 3 的二进制文件

使用python将二进制文件上传到API

使用API将通用二进制文件上传到GDrive

发布二进制文件时,使用Postman访问AWS API Gateway的AWS Signature错误

使用JMETER向具有二进制主体的RESTful API发出POST请求

使用ifstream将二进制数据读入结构