インターネット上には、他の言語の HTTP POST リクエストでファイル ストリームを送信する方法に関するドキュメントがたくさんありますが、Scalatra ではそうではありません。
トピックへ: Scalatra post() を介して、イメージをバイト配列またはファイル ストリーム (ずさんな用語で申し訳ありません。私はまったくの初心者です) として送信したいと考えています。バイト配列を取り、それを .jpg 画像に変換してサーバーに保存するバックエンド Java 関数が既にあります。私がはっきりしていないのは、Scalatra でこれを行う方法の正確な構文です。
それが私の投稿リクエストのようです:
val imageInBytes = ... //obtain image in bytes
post("/images", ("image" -> imageInBytes))
ただし、Eclipse は、オーバーロードされたメソッド post を (String, (String, Array[Byte])) に適用できないと言っています。
サーバー側:
post("/images"){
contentType = "image/jpeg" //for displaying the image
val imInBytes = params("image") //obtain data from request body
//do something with it.
}
どんな助けでも大歓迎です!