Skip to content

[SwiftUI, Vapor] Vapor 서버와 연동시켜 서울시 문화행사 정보(Open Api)를 제공하는 앱

Notifications You must be signed in to change notification settings

l1004ga/CultureEventApp-Vapor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CultureEventApp-Vapor

  • Implement Vapor server(Models) and get data from server to app(CultureEventsApp)

1. Import data from Open API to Vapor Server

1) Preparing Open API

<데이터 출처>

<API 사용법>

  • 서울특별시 웹페이지 회원가입 및 로그인
  • 원하는 API 인증키 발급신청 및 요청 URL에 발급받은 인증키 삽입

2) Installing Vapor & PostMan on Mac

<Postman 설치>

   brew install --cask postman
   //필수 아님. 서버가 잘 돌아가는지 확인하기 위해 사용

<Vapor 설치>

  brew install vapor
  //이거 --cask로 깔면 다른 파일이 깔리기 때문에 꼭 --cask 뺘고 명령어 입력 필요

<Vapor 파일 생성>

  vapor new filename
  //filename에 원하는 파일 이름을 생성해준다.

<Vapor 파일 열기>

  cd filename
  open Package.swift

3) Create data model to receive from open API

  • Vapor 파일의 Sources > App > 하위에 Models 폴더 만들기
  • Models 폴더 하위에 아래 2개의 파일 생성
    • URL을 기준으로 API서버에서 JSON데이터를 불러오는 코드 구현(WebService.swift)
    • 가져온 JSON를 사용가능한 데이터 형식으로 파싱시캬주는 구조 구현(EventList.swift)

2. Request the necessary data from CultureEventsApp to the Vapor server

1) Configuring the router on Vapor Server to receive data requests from CultureEventApp

  • Vapor 파일의 Sources > App 하위에 디폴트로 생성된 routes.swift 수정
  • 수정 시 APP으로부터 데이터 요청(depth : events)을 받았을 때 수행할 코드 구현(=Open API로부터 Vapor서버로 데이터를 가져옴)

여기까지 했다면 서버 코드 실행(Xcode에서는 실행버튼 누르면 됨)

2) Request data from CultureEventApp to Vapor Server

  • 서버는 테스트용으로 로컬에서 만들 내용이기 때문에 서버 URL은 아래와 같다.
  • ContentView 로딩 시에 Task로 데이터 요청 실행

3. app demo

About

[SwiftUI, Vapor] Vapor 서버와 연동시켜 서울시 문화행사 정보(Open Api)를 제공하는 앱

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published