使用Tink Web上传二进制内容



我想从我的javascript客户端上传一个arrayBuffer,但我无法弄清楚如何定义我的路由

我尝试了@:consumptions元数据与应用程序/八位字节流MimeType,但编译器不喜欢它。

class Api {
    public function new() { }
    @:post('/upload')
    @:consumes("application/octet-stream")
    public function upload(data:ArrayBuffer){
        trace(data);
    }
}

src/server/Api.hx:17:第 17-19 行:警告:所有定义的路由都不完整src/server/Api.hx:15:字符 9-18:警告:路由不捕获参数data

我怀疑无法从正文流中创建 ArrayBuffer?如果将其更改为仅 https://api.haxe.org/haxe/io/Bytes.html 怎么办?

编辑:文档(https://haxetink.github.io/tink_web/#/basics/parameters?id=advanced-data-types(提到解析器仅适用于应用程序/json和表单urlencode的MIME类型。八位字节流解析器不存在 (https://github.com/haxetink/tink_web/blob/master/src/tink/web/macros/MimeType.hx(。您可能可以编写一个,并很容易将字节解析为 Bytes 对象。

最新更新