Python Data를 Json 타입으로 변환 후 서버에 보내주기

IRISH·2022년 8월 3일
2

Python

목록 보기
1/3
post-thumbnail

✅ 개발 배경

하나의 프로젝트(프로그램)를 개발하기 위해서는 Front End부터 서버 / DB / 메인 기술 등이 필요하다. 그리고 각각 구축된 것을 하나로 결합하기 위한 과정이 필요하다.

특정 프로젝트에서 필자는 메인 기술 개발을 담당했다. 이 프로젝트의 메인 기술은 객체 인식이었다. 하지만, 객체 인식은 한 프로젝트 내 일부에 해당되기에, 좀 더 완성도 있는 프로젝트를 구축하기 위해서는 클라이언트에게 객체 탐지 정보(예 : 객체명 / 객체 탐지 시간 등)를 보여주기 위한 작업을 수행해야 했다. 이 정보는 서버팀에게 보내주어야 했다.

객체 인식은 Python을 통해 프로그래밍 했으나 서버는 Python이 아닌 Java로 개발되고 있었다. 서버팀에 보내기 위해서는 Java 형식에 맞게 변환해주어야 하는데, 이를 어떻게 해결할 수 있을지 막막했다.

또한, Python의 형식에서 Java 형식으로 변환을 성공적으로 하였다 하더라도, 이를 어디로 보내야 서버를 구축한 인원이 수신할 수 있을까도 문제였다.

🚀 해결 과제 정리

즉, 직면 문제를 정리하면 아래와 같다.

  1. Python Data를 Java 형식으로 변환
  2. 변환된 Data를 서버팀이 수신할 수 있는 위치로 송신

위 문제를 해결하기 위해 열심히 구글링을 하여 다음과 같은 결과를 얻게 되었다.

  1. Json을 활용하여 Python Data를 Java 형식으로 변환한다.
  2. 서버팀에서 생성한 Public IP로 변환된 데이터를 송신한다.

이를 프로그래밍한 코드는 아래와 같다.

✨ 소스 코드

import requests # 보내고자 하는 ip로 전송하기 위해 라이브러리
import json # python data 형식을 json 형식으로 변환하기 위한 라이브러리

# URL(Pulic IP)
url = "http://1.2.3.4" # 해당 IP는 설명하기 위한 IP이지, 작성자가 사용하는 IP가 아님.

# headers
headers = {
    "Content-Type": "application/json"
}

# 서버팀에 보내고자 하는 것을 key - value 형식으로 작성. 작성한 것을 temp라는 변수에 대입
# 모두 소문자로 구성해줄 것
temp = {
    "name":'HongGilDong', # 여기서 name이 key, HongGilDong이 value에 해당
    "age": "25",
    "job": "student"
}

# 보내고자 하는 Data를 JSON 형식으로 변환
data = json.dumps(temp)

# 변환된 Data를 보내고자 하는 URL에 보내기
response = requests.post(url, headers=headers, data=data)

# 송신 결과 확인
print("response: ", response)
print("response.text: ", response.text)
  • 송신 결과로 200이 떠야 정상적으로 송신이 된 것이다.

😎 참고 URL

💥 Irish 깃허브

-> Irish Github

profile
#Software Engineer #IRISH

0개의 댓글