2014-03-05 4 views
0

순수한 PNG 이미지를 뱉어내는 프로그램이 있습니다. 나는 데이터로 첨부 된 프로그램의 출력으로 간단한 html 웹 페이지를 뱉어내는 bash cgi 스크립트를 사용하여이 출력을 첨부하려고 노력해 왔습니다.bash cgi 프로그램 출력

e.e.

#!/bin/bash 
parm=($QUERY_STRING) # capture the query string (from url) 
output=$(java -jar Program.jar $parm) # capture the bytes of the PNG image 
len=${#output} # figure out the size of the png image 

# simple web page with png image 
resp="HTTP/1.1 200 OK\r\nContent-Type: image/png\r\nConnection: close\r\nContent-Length: $len\r\n\r\n$output" 

echo -en $resp # cgi teleport that hogwash out 

I 파이프 경우 잘 작동하는 중간 서버 프로그램에 TCP를 통해 요청하지만 내가 프로그램에 CGI 스크립트를 연결하기 위해 실행하는 별도의 서버 프로그램이해야하는 단점이있다.

도움 주셔서 감사합니다.

[편집]

아, 내가 그것을 알아 냈어요. 다음과 같이 간단합니다.

echo "HTTP/1.1 200 Ok" 
... 
java -jar program.jar @parm 
+1

StackOverFlow를 사용하면 자신 만의 질문에 답변 할 수 있습니다. 이후 누군가에게 도움이 될 수 있으므로 좋은 생각입니다. 이전 편집에서 대답을 대답 상자로 옮기는 것이 좋습니다 – David

+0

처음 시도했지만 그 곳에서 시도했습니다. 당신이 당신의 자신의 게시물에 답하기 전에 10 시간의 지연이있었습니다. 지금 고쳐주었습니다. 고마워요. – user3353406

답변

0

아, 알아 냈습니다. . 이것은 다음처럼 간단했다.

echo "HTTP/1.1 200 Ok" 
... 
java -jar program.jar @parm 

(프로그램은 내가 배쉬의 내부에 랩 할 때 밖으로 문자열로 바이트를 감싸 것 같다 "에코"표준으로 데이터 (이미지의 바이트)를 출력