본문 바로가기

프로그래밍/아두이노+카카오톡

Yellow id 연동을 위한 IBM bluemix기반 Python Flask생성하기

이전에 시도하려고 했던 arduino wifi shield를 기반으로한 웹서버는 https서버가 지원이 되지 않아서 실패하였고 새로운 HTTPS를 지원하는 서버를 생성해야 한다는 것을 알았다.


그래서 이번에는 HTTPS기반의 서버를 생성하기 위해서 IBM에서 제공하는 PaaS(Platform As A Service) 클라우드 서비스이다. Bluemix를 활용하게되면 여러 언어를 활용하여 서버를 개발 할 수 있는데 AWS(Amazon web service)와 달리 환경셋팅이 필요없이 바로 사용하려는 언어만 선택하면 바로 코드만 올리면 개발이 가능하다는 장점이 있다.


블루믹스로고



위 그림과 같이 bluemix에서는 여러가지 서비스를 빌드하고 소유하고 개발할 수 있다. 그 중에서 나는 Python을 사용하고 Flask 프레임워크를 활용하기로 했다. Python을 사용하여 여러가지 module들을 사용하면 쉽고 빠르게 개발이 가능하다.



python flask를 생성하고, 적절한 앱이름, 호스트 이름을 설정한다.





위 그림과 같이 새로운 web server과 프로젝트가 생성된 것을 알 수 있다.



starter code를 다운받아보면 위와 같은 구조의 python flask 프로젝트가 만들어짐을 볼 수 있다. 

requirements.txt 에는 필요한 모듈들의 이름과 버젼이 들어가 있다.

welcome.py 에는 기본적인 python flask 예제 코드가 들어가 있다.

welcome.py코드 내용은 아래와 같다.






기본적으로 생성되는 url로 들어가면 위와 같은 예제 web page가 뜨게 된다.



기본적인 url에 /myapp route로 들어가면 위와 같은 글자가 뜨게 된다.




기본 url에 /api/people route로 가게 되면 위와 같이 json 형태의 메시지를 뿌려줄 수 있다.



기본 url에 /api/people/<name>을 넣게되면 <name>기반으로 json 형태로 다시 뿌려줌을 알 수 있다.


위와 같은 기본적인 기능을 갖춘 IBM bluemix의 python flask를 활용하여 yellow id와 통신하는 서버를 만들 것이다.


그리고 통신을 기반으로 하여 arduino 혹은 raspberrypi와 통신하는 사물인터넷 기기를 만들고자 한다.


to be continue..