[next] flask 로 restful api 서버 만들기

70
파이썬 플라스크로 만드는 간단 넥스타그램 서버 v1.0

Upload: youngsu-son

Post on 12-Jul-2015

1.778 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: [NEXT] Flask 로 Restful API 서버 만들기

파이썬 플라스크로 만드는 간단 넥스타그램 서버

v10

학습목표이 학습을 마치면hellip

- 파이썬 개발 환경을 갖추는 방법을 알 수 있습니다(OSX 기준)13- MySql설치 관리를 할 수 있습니다(OSX 기준)13- 플라스크를 이용하여 서버를 생성할 수 있습니다13- 외주를 하는 간접 경험을 할 수 있을지도 lt- 이번 컨셉

httpsinsipcommediumtspng

각자 서버가 있으면 좋겠지만hellip13없다고 가정하고13

OSX기준으로13

로컬에 파이썬 플라스크와 MySql을 설치를 합니다13또 직접 제작중에 부분부분 자료를 만들은 탓에13

삽질에 의해 결과적으로 불필요한 작업이 포함되어있을수 있습니다

이런 외주 의뢰가 들어왔습니다

기존에 서비스를 운영하던 N모사13

PHP로만든 서버가 있는데13재개발 의뢰가 들어왔습니다13

(이유는 상상에hellip)13

하지만 이때까지 웹 프레임워크는 만져보지 못해봤지만13파이썬 플라스크가 간단하고 성능도 간단히 쓰는 정도에는 좋다고 하여13

플라스크를 이용하여 개발을 하고자 합니다

서버로부터 게시글의 정보를13json 형태로 불러오던 형태

httpuploadwikimediaorgwikipediacommonsaacNexus_5_Front_Viewpng

httpuploadwikimediaorgwikipediacommonsaacNexus_5_Front_Viewpng

플라스크로 데이터를 처리하고13DB는 MySql을 사용하려 합니다

httpdevmysqlcomdownloadsmysql

먼저 MySql설치hellip

설치에 시간이 소요 되므로 잠시 다른 설치를 하겠습니다

pip 설치

httpspippypaioenlatestinstallinghtml

get-pippy 를 다운로드합니다

sudo python get-pippy

pip란

python의 패키지를 자동으로 관리해주고13설치를 도와주는 툴입니다13

필요한 패키지가 있으면13

sudo pip install ltpackagegt만으로13자동 다운로드에서 설치까지 됩니다

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 2: [NEXT] Flask 로 Restful API 서버 만들기

학습목표이 학습을 마치면hellip

- 파이썬 개발 환경을 갖추는 방법을 알 수 있습니다(OSX 기준)13- MySql설치 관리를 할 수 있습니다(OSX 기준)13- 플라스크를 이용하여 서버를 생성할 수 있습니다13- 외주를 하는 간접 경험을 할 수 있을지도 lt- 이번 컨셉

httpsinsipcommediumtspng

각자 서버가 있으면 좋겠지만hellip13없다고 가정하고13

OSX기준으로13

로컬에 파이썬 플라스크와 MySql을 설치를 합니다13또 직접 제작중에 부분부분 자료를 만들은 탓에13

삽질에 의해 결과적으로 불필요한 작업이 포함되어있을수 있습니다

이런 외주 의뢰가 들어왔습니다

기존에 서비스를 운영하던 N모사13

PHP로만든 서버가 있는데13재개발 의뢰가 들어왔습니다13

(이유는 상상에hellip)13

하지만 이때까지 웹 프레임워크는 만져보지 못해봤지만13파이썬 플라스크가 간단하고 성능도 간단히 쓰는 정도에는 좋다고 하여13

플라스크를 이용하여 개발을 하고자 합니다

서버로부터 게시글의 정보를13json 형태로 불러오던 형태

httpuploadwikimediaorgwikipediacommonsaacNexus_5_Front_Viewpng

httpuploadwikimediaorgwikipediacommonsaacNexus_5_Front_Viewpng

플라스크로 데이터를 처리하고13DB는 MySql을 사용하려 합니다

httpdevmysqlcomdownloadsmysql

먼저 MySql설치hellip

설치에 시간이 소요 되므로 잠시 다른 설치를 하겠습니다

pip 설치

httpspippypaioenlatestinstallinghtml

get-pippy 를 다운로드합니다

sudo python get-pippy

pip란

python의 패키지를 자동으로 관리해주고13설치를 도와주는 툴입니다13

필요한 패키지가 있으면13

sudo pip install ltpackagegt만으로13자동 다운로드에서 설치까지 됩니다

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 3: [NEXT] Flask 로 Restful API 서버 만들기

httpsinsipcommediumtspng

각자 서버가 있으면 좋겠지만hellip13없다고 가정하고13

OSX기준으로13

로컬에 파이썬 플라스크와 MySql을 설치를 합니다13또 직접 제작중에 부분부분 자료를 만들은 탓에13

삽질에 의해 결과적으로 불필요한 작업이 포함되어있을수 있습니다

이런 외주 의뢰가 들어왔습니다

기존에 서비스를 운영하던 N모사13

PHP로만든 서버가 있는데13재개발 의뢰가 들어왔습니다13

(이유는 상상에hellip)13

하지만 이때까지 웹 프레임워크는 만져보지 못해봤지만13파이썬 플라스크가 간단하고 성능도 간단히 쓰는 정도에는 좋다고 하여13

플라스크를 이용하여 개발을 하고자 합니다

서버로부터 게시글의 정보를13json 형태로 불러오던 형태

httpuploadwikimediaorgwikipediacommonsaacNexus_5_Front_Viewpng

httpuploadwikimediaorgwikipediacommonsaacNexus_5_Front_Viewpng

플라스크로 데이터를 처리하고13DB는 MySql을 사용하려 합니다

httpdevmysqlcomdownloadsmysql

먼저 MySql설치hellip

설치에 시간이 소요 되므로 잠시 다른 설치를 하겠습니다

pip 설치

httpspippypaioenlatestinstallinghtml

get-pippy 를 다운로드합니다

sudo python get-pippy

pip란

python의 패키지를 자동으로 관리해주고13설치를 도와주는 툴입니다13

필요한 패키지가 있으면13

sudo pip install ltpackagegt만으로13자동 다운로드에서 설치까지 됩니다

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 4: [NEXT] Flask 로 Restful API 서버 만들기

이런 외주 의뢰가 들어왔습니다

기존에 서비스를 운영하던 N모사13

PHP로만든 서버가 있는데13재개발 의뢰가 들어왔습니다13

(이유는 상상에hellip)13

하지만 이때까지 웹 프레임워크는 만져보지 못해봤지만13파이썬 플라스크가 간단하고 성능도 간단히 쓰는 정도에는 좋다고 하여13

플라스크를 이용하여 개발을 하고자 합니다

서버로부터 게시글의 정보를13json 형태로 불러오던 형태

httpuploadwikimediaorgwikipediacommonsaacNexus_5_Front_Viewpng

httpuploadwikimediaorgwikipediacommonsaacNexus_5_Front_Viewpng

플라스크로 데이터를 처리하고13DB는 MySql을 사용하려 합니다

httpdevmysqlcomdownloadsmysql

먼저 MySql설치hellip

설치에 시간이 소요 되므로 잠시 다른 설치를 하겠습니다

pip 설치

httpspippypaioenlatestinstallinghtml

get-pippy 를 다운로드합니다

sudo python get-pippy

pip란

python의 패키지를 자동으로 관리해주고13설치를 도와주는 툴입니다13

필요한 패키지가 있으면13

sudo pip install ltpackagegt만으로13자동 다운로드에서 설치까지 됩니다

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 5: [NEXT] Flask 로 Restful API 서버 만들기

서버로부터 게시글의 정보를13json 형태로 불러오던 형태

httpuploadwikimediaorgwikipediacommonsaacNexus_5_Front_Viewpng

httpuploadwikimediaorgwikipediacommonsaacNexus_5_Front_Viewpng

플라스크로 데이터를 처리하고13DB는 MySql을 사용하려 합니다

httpdevmysqlcomdownloadsmysql

먼저 MySql설치hellip

설치에 시간이 소요 되므로 잠시 다른 설치를 하겠습니다

pip 설치

httpspippypaioenlatestinstallinghtml

get-pippy 를 다운로드합니다

sudo python get-pippy

pip란

python의 패키지를 자동으로 관리해주고13설치를 도와주는 툴입니다13

필요한 패키지가 있으면13

sudo pip install ltpackagegt만으로13자동 다운로드에서 설치까지 됩니다

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 6: [NEXT] Flask 로 Restful API 서버 만들기

httpuploadwikimediaorgwikipediacommonsaacNexus_5_Front_Viewpng

플라스크로 데이터를 처리하고13DB는 MySql을 사용하려 합니다

httpdevmysqlcomdownloadsmysql

먼저 MySql설치hellip

설치에 시간이 소요 되므로 잠시 다른 설치를 하겠습니다

pip 설치

httpspippypaioenlatestinstallinghtml

get-pippy 를 다운로드합니다

sudo python get-pippy

pip란

python의 패키지를 자동으로 관리해주고13설치를 도와주는 툴입니다13

필요한 패키지가 있으면13

sudo pip install ltpackagegt만으로13자동 다운로드에서 설치까지 됩니다

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 7: [NEXT] Flask 로 Restful API 서버 만들기

httpdevmysqlcomdownloadsmysql

먼저 MySql설치hellip

설치에 시간이 소요 되므로 잠시 다른 설치를 하겠습니다

pip 설치

httpspippypaioenlatestinstallinghtml

get-pippy 를 다운로드합니다

sudo python get-pippy

pip란

python의 패키지를 자동으로 관리해주고13설치를 도와주는 툴입니다13

필요한 패키지가 있으면13

sudo pip install ltpackagegt만으로13자동 다운로드에서 설치까지 됩니다

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 8: [NEXT] Flask 로 Restful API 서버 만들기

설치에 시간이 소요 되므로 잠시 다른 설치를 하겠습니다

pip 설치

httpspippypaioenlatestinstallinghtml

get-pippy 를 다운로드합니다

sudo python get-pippy

pip란

python의 패키지를 자동으로 관리해주고13설치를 도와주는 툴입니다13

필요한 패키지가 있으면13

sudo pip install ltpackagegt만으로13자동 다운로드에서 설치까지 됩니다

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 9: [NEXT] Flask 로 Restful API 서버 만들기

pip 설치

httpspippypaioenlatestinstallinghtml

get-pippy 를 다운로드합니다

sudo python get-pippy

pip란

python의 패키지를 자동으로 관리해주고13설치를 도와주는 툴입니다13

필요한 패키지가 있으면13

sudo pip install ltpackagegt만으로13자동 다운로드에서 설치까지 됩니다

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 10: [NEXT] Flask 로 Restful API 서버 만들기

sudo python get-pippy

pip란

python의 패키지를 자동으로 관리해주고13설치를 도와주는 툴입니다13

필요한 패키지가 있으면13

sudo pip install ltpackagegt만으로13자동 다운로드에서 설치까지 됩니다

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 11: [NEXT] Flask 로 Restful API 서버 만들기

pip란

python의 패키지를 자동으로 관리해주고13설치를 도와주는 툴입니다13

필요한 패키지가 있으면13

sudo pip install ltpackagegt만으로13자동 다운로드에서 설치까지 됩니다

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 12: [NEXT] Flask 로 Restful API 서버 만들기

flask 설치httpflaskpocooorg

sudo pip install Flaskpip가 있으면 한줄로 설치 가능hellip

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 13: [NEXT] Flask 로 Restful API 서버 만들기

시스템 환경설정에서 MySql을 선택하여

MySql을 실행합니다

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 14: [NEXT] Flask 로 Restful API 서버 만들기

sudo pip install flask-mysql13sudo ln -s usrlocalmysqlliblibmysqlclient18dylib usrlib

export PATH=$PATHusrlocalmysqlbin13sudo pip install MySQL-python

mysql - python 설치

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 15: [NEXT] Flask 로 Restful API 서버 만들기

MySql설정

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 16: [NEXT] Flask 로 Restful API 서버 만들기

cd usrlocalmysqlbin13sudo mysql

MySql 접속

아직 root password가 설정되어있지 않아13바로 접속이 가능합니다

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 17: [NEXT] Flask 로 Restful API 서버 만들기

use mysql13update user set password=password(사용하고 싶은 패스워드) where user=root13flush privileges13quit

root 비밀번호 설정

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 18: [NEXT] Flask 로 Restful API 서버 만들기

mysql -u root -p13create database nextagram13use nextagram

lt-비밀번호 입력

mysql 접속 후 데이터베이스 생성

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 19: [NEXT] Flask 로 Restful API 서버 만들기

여기까지가 밑준비hellip

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 20: [NEXT] Flask 로 Restful API 서버 만들기

httpgooglldIkZw

본격 외주 체험하기

전 개발자가 다음의 문서를 남기고 떠났습니다

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 21: [NEXT] Flask 로 Restful API 서버 만들기

전에 사용하던 DB 정보와hellip

왜 varchar인지는 그냥 귀차니즘hellip의 잔재

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 22: [NEXT] Flask 로 Restful API 서버 만들기

요청내역과 쿼리문

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 23: [NEXT] Flask 로 Restful API 서버 만들기

기존의 소스코드도 포함되어있습니다hellip

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 24: [NEXT] Flask 로 Restful API 서버 만들기

굉장히 보기 불편하고 허전해보이지만13이마저도 없고 사장님은 컴맹인 일도 있습니다hellip

httppdsjoinscomnewscomponentmoneytoday201111282011112814508246454_2jpg

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 25: [NEXT] Flask 로 Restful API 서버 만들기

문서에 있던 대로 새 테이블을 만들어 주었습니다hellip13(원래라면 기존 DB가 있거나 덤프떠서 옮기는 작업이 필요합니다)

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 26: [NEXT] Flask 로 Restful API 서버 만들기

insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title1 writer1 id1 content1 writeDate1 imgName1)13insert into next_android_nextagram (Title Writer Id Content WriteDate ImgName) values (title2 writer2 id2 content2 writeDate2 imgName2)

그리고 테스트용 임시 데이터를 넣어봤습니다hellip (나중에 삭제해야합니다)

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 27: [NEXT] Flask 로 Restful API 서버 만들기

Flask HelloWorld

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 28: [NEXT] Flask 로 Restful API 서버 만들기

예제의 에디터는 sublime사용hellip 편하신것 사용하시면 됩니다hellip

HelloWorld

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 29: [NEXT] Flask 로 Restful API 서버 만들기

http1270015009

HelloWorld

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 30: [NEXT] Flask 로 Restful API 서버 만들기

python mainpy(파일명)

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 31: [NEXT] Flask 로 Restful API 서버 만들기

만약 already use에러가 나오면hellip

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 32: [NEXT] Flask 로 Restful API 서버 만들기

만약 already use에러가 나오면hellip

다른 프로세스에서 해당 포트를 사용중이거나13비정상 종료로 인해 소켓이 대기중인 상태hellip

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 33: [NEXT] Flask 로 Restful API 서버 만들기

ps 로 프로세스 정보를 본다음13해당하는 애들을13

kill ltPIDgt로 종료합니다13

그래도 안되면hellip 포트를 변경해서 실습합시다hellip

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 34: [NEXT] Flask 로 Restful API 서버 만들기

사실 플라스크에서는 html을 템플릿을 사용해 표시해주거나 하는데hellip13이 실습에서는 굳이 프런트를 보여줄 필요가 없으므로 생략합니다hellip

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 35: [NEXT] Flask 로 Restful API 서버 만들기

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 36: [NEXT] Flask 로 Restful API 서버 만들기

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 37: [NEXT] Flask 로 Restful API 서버 만들기

먼저 MySql과 연동해보겠습니다

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 38: [NEXT] Flask 로 Restful API 서버 만들기

loadData로 경로를 하나 추가하고hellip

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 39: [NEXT] Flask 로 Restful API 서버 만들기

쿼리를 실행하고 그 결과를 print해보았습니다13하지만 지금 출력 결과는 list에 tuple형태hellip json형태로 출력해야합니다

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 40: [NEXT] Flask 로 Restful API 서버 만들기

기본 제공되어 있는 json을 불러오고

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 41: [NEXT] Flask 로 Restful API 서버 만들기

jsondump를 사용해 json형태로 변환하고13웹페이지에 띄울수 있도록 리턴하였습니다

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 42: [NEXT] Flask 로 Restful API 서버 만들기

결과가 잘 나온듯 하지만 뭔가 이상합니다hellip

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 43: [NEXT] Flask 로 Restful API 서버 만들기

httpjsonviewerstackhu

값만 있고 키가 없어서13실제로 사용하기에는 문제가 있습니다

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 44: [NEXT] Flask 로 Restful API 서버 만들기

커서의 description을 먼저 가져와13데이터를 가져올때마다 하니씩 합쳤습니다

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 45: [NEXT] Flask 로 Restful API 서버 만들기

정상적으로 출력하고 있는것을 확인하실 수 있습니다

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 46: [NEXT] Flask 로 Restful API 서버 만들기

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 47: [NEXT] Flask 로 Restful API 서버 만들기

문서에 따르면 업로드는 POST방식으로 넘어옵니다13request method에 post일때만 처리를 해줄려고 합니다

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 48: [NEXT] Flask 로 Restful API 서버 만들기

httpwwwfhmnluploadcontentimageThomasAugustus202013artwork412jpg

하지만 이제부터 테스트의 지옥hellip13스마트폰으로 계속 업로드 시도를 해야 합니다hellip13

(기존 php서버로 정상적으로 전송하는지 체크해보는것도 좋을 수 있습니다)

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 49: [NEXT] Flask 로 Restful API 서버 만들기

클라이언트가 post form으로 게시글 정보를 보내오므로13다음과 같이 데이터를 받아서 확인해 봅니다13

여기서 문제가 발생하면 다시 한번 처음부터 원인 검토를hellip

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 50: [NEXT] Flask 로 Restful API 서버 만들기

간단히 클라이언트 없이13테스트를 해볼려면

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 51: [NEXT] Flask 로 Restful API 서버 만들기

파일 업로드

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 52: [NEXT] Flask 로 Restful API 서버 만들기

이미지들을 보관할 폴더를 만들었습니다

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 53: [NEXT] Flask 로 Restful API 서버 만들기

그리고 그 폴더의 경로를 따로 지정해 놨습니다hellip13( 파이썬에 대해 흥미가 생기신 분은 자동으로 경로를 가져오도록 해보세요^^ (os라이브러리 이용) )

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 54: [NEXT] Flask 로 Restful API 서버 만들기

파일 저장을 위해 os를 불러왔습니다

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 55: [NEXT] Flask 로 Restful API 서버 만들기

문서와 클라 코드를 보니 uploadrsquoedrsquofile이라는13이름으로 전송이 이루어지고 있습니다hellip

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 56: [NEXT] Flask 로 Restful API 서버 만들기

tip1 가끔 보면 서버사이드 파일인 jsp나 php파일을 업로드시도가 있습니다13

이런 경우에는 꼭 서버쪽에서 검증이 필요합니다13헤더 분석도 좋지만 간단히 확장자만이라도 확인하면 좋습니다13

(폴더의 실행 권한도 없애고hellip)

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 57: [NEXT] Flask 로 Restful API 서버 만들기

save()로 업로드된 파일을 저장합니다

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 58: [NEXT] Flask 로 Restful API 서버 만들기

파일이 잘 저장되는것을 확인할 수 있습니다13( 안되면 다시 원인 검토hellip)

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 59: [NEXT] Flask 로 Restful API 서버 만들기

이제 DB에 넣어보겠습니다13insert에는 commit()이 꼭 필요 합니다

쿼리가 길어서 처리hellip

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 60: [NEXT] Flask 로 Restful API 서버 만들기

DB에도 잘 들어갔습니다13(안되었으면 다시 검토hellip)

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 61: [NEXT] Flask 로 Restful API 서버 만들기

리스트를 정상적으로 받아왔지만 사진을 가져오지 못하고 있습니다

(위에 두개는 처음 테스트로 입력한13데이터여서 사진이 없음hellip)

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 62: [NEXT] Flask 로 Restful API 서버 만들기

만들어야 되는 것

httpserver portloadData lt- DB의 게시글 정보를 Json으로 표시13httpserver portupload lt- 사진 업로드와 게시글 정보 DB저장13httpserver portimageasdjpg lt- 업로드 되어있는 사진 접근

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 63: [NEXT] Flask 로 Restful API 서버 만들기

이미지 파일을 요청하면 이미지를 리턴하는것을 만들어 보겠습니다

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 64: [NEXT] Flask 로 Restful API 서버 만들기

리턴에 send_file(경로) 끝hellip

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 65: [NEXT] Flask 로 Restful API 서버 만들기

이미지 요청이 성공적으로 이루어졌습니다

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)

Page 66: [NEXT] Flask 로 Restful API 서버 만들기

truncate table next_android_nextagram13로 DB를 날리고13

앱도 지운후에 다시 해보면13성공적으로 잘 표시됩니다13

(만약 안되시면 또hellip13디버깅의 연속hellip)