POSTリクエストのボディとしてSTLファイルを添付することをテストしました。構成: Windows 10、Postman (POST->バイナリ)、R 3.4.2。POST リクエストの R コードは次のようになります。
#' @post /endpointname
function(req) {
rawstl = req$postBody # STL file is attached as Binary in Postman.
rawData1 = as.raw(unlist(lapply(rawstl, charToRaw)))
## E.g. 43 4f 4c 4f 52 3d ...
...
}
この出力は、以下を使用して STL ファイルでバイナリを直接読み取った場合と同じです。
con = file(fileName, "rb")
rawData2 = readBin(con, "raw", n=100, size=1, endian="little")
ただし、Plumber バージョン (上記) を使用すると、いくつかのパーツが欠落しています。その理由は、行末の処理方法または導入方法、または Plumber のデフォルト フィルターにある可能性があると思います。
欠損値は、req$postBody の要素間で発生します。たとえば、rawData2
[a, b, c, d, e, f, g] をrawData1
保持し、[a, b, e, f] を保持します。上記の関数の R オブジェクトrawstl
の長さは 1 を超えており、サブリスト間で欠損値が発生しています。
しばらく遊んでみましたが、何が壊れているのかわかりません。