CommonLisp와 RaspberryPi로 웹 애플리케이션~그 1~

소개



CommonLisp과 RaspberryPi로 웹 애플리케이션을 만들고 싶습니다.
또한 자신이 CommonLisp에서 웹 애플리케이션을 만드는 데 공부한 것을 정리해 나갑니다.

이번에는 웹 애플리케이션 환경으로 "Clack"을 사용합니다.

Clack 설치



SBCL을 시작하고 Quicklisp에서 Clack을로드합니다.
처음 로드할 때 상당히 시간이 걸립니다.
자신의 환경에서는 5분 정도 걸렸습니다.
(ql:quickload :clack)

이하 Clack 로드중의 모습



로드 완료!



Clack의 동작 확인



Clack의 Github 페이지 에 기재되어 있는 샘플 프로그램을 REPL에 넣어 실행해 봅니다.
(clack:clackup
 (lambda (env)
   (declare (ignore env))
   '(200 (:content-type "text/plain") ("Hello, Clack!"))))

시간이 걸렸습니다・・・. (5분 정도?)
프로그램을 실행하고 나서 아무 일도 일어나지 않는 것처럼 보이지만 다음 메시지가 나올 때까지 기장을 기다리십시오.
Hunchentoot server is going to start.
Listening on localhost:5000.

※ 2회째 이후는 그렇게 시간은 걸리지 않았습니다.

그런 다음 다른 터미널에서 다음 명령을 실행합니다.
· RaspberryPi 내에서 확인하는 경우
curl http://localhost:5000

・다른 PC에서 확인하는 경우
curl http://[RaspberryPiのIPアドレス]:5000

※ RaspberryPi의 IP 주소는 "ifconfig"명령으로 확인하십시오.

그러면 다음과 같이 "Hello, Clack!"라고 표시됩니다.
· RaspberryPi에서 확인한 경우



・다른 PC에서 확인한 경우



드디어 안드로이드 스마트 폰의 웹 브라우저에서도 확인할 수있었습니다.
웹 브라우저의 URL을 넣는 부분에 「http://[RaspberryPi의 IP주소]:5000」를 입력



마지막으로



우선, 멋지고 간단한 웹 애플리케이션의 튜토리얼을 해 보았습니다.
궁극적으로 웹 브라우저에서 RaspberryPi의 GPIO를 제어하여 IOT와 같은 것을 시도하고 싶습니다.
언제쯤 할 수 있을지 모르겠지만・・・(;^_^A
최선을 다하겠습니다!

좋은 웹페이지 즐겨찾기