2012-05-17 2 views
2

인터넷에서 Scalatra가 아닌 다른 언어로 된 HTTP POST 요청에서 파일 스트림을 보내는 방법은 수 많은 설명서가 있습니다.Scalatra - 요청 본문의 바이트 배열/이미지 스트림

주제 : Scalatra post()를 통해 이미지를 바이트 배열 또는 파일 스트림으로 보내고 싶습니다. (어리석은 용어로 유감스럽게도, 저는 절대적인 초보자입니다.) 이미 바이트 배열을 사용하여 .jpg 이미지로 다시 변환하고 서버에 저장하는 백엔드 Java 기능이 있습니다. 제가 잘 모르는 부분은 Scalatra에서 이것을 수행하는 정확한 구문입니다. 같은 내 게시물 요청이 보이는 무엇

: 그러나

val imageInBytes = ... //obtain image in bytes 
    post("/images", ("image" -> imageInBytes)) 

, Eclipse는 오버로드 된 메소드 게시물 (문자열 (문자열, 배열 [바이트])) 서버에서

에 적용 할 수 없다는 측면 :

post("/images"){ 
      contentType = "image/jpeg" //for displaying the image 
      val imInBytes = params("image") //obtain data from request body 
      //do something with it. 
    } 

어떤 도움을 주시면 감사하겠습니다.

+0

나는 scalatra가 요청을 할 수 없다고 생각한다. 그것은 단지 서버입니다 .... 나는 오해가 있었나요? –

답변

0

여러분은 base64 url로 이미지 바이트를 인코딩해야합니다. 그런 다음 params 가방에서 가져올 수 있습니다.

엔드 포인트에 원시 이미지를 게시 한 다음 inputStream을 읽을 수도 있습니다.