OAuth2로 access_token 까지 얻은 상태.
문제는 지금 main.rs에 다 구현된 상태.
거기다 me 요청을 보냈을 때 사용할 구조체도 분리 필요.
src/
main.rs
이 상태에서
최종적으로 만들고 싶은 모습은 아래와 같다.
src/
authorize/ -> 인증 관련
some_file1
some_file2
some_file3
info_struct/ -> request 에 사용할 구조체
some_file1
some_file2
some_file3
일단 러스트 모듈 개념이 너무 헷갈린다.
모듈 설명 이 영상이 그나마 잘 설명해준다.
아무튼 러스트가 모듈을 찾는 순서를 보면
먼저 lib.rs를 보고 거기에 선언된 모듈을 보는 식으로 찾는다.
// lib.rs
pub mod authorize
pub mod info_struct
이런 lib.rs 파일이 있으면 authorize, info_struct 모듈을 찾을 수 있다.
러스트에서 모듈을 만드는(?) 방법은 3개가 있다.
1.
src/
main.rs
lib.rs
module1.rs
module2.rs
2.
src/
main.rs
lib.rs
module1/
module1.rs
module2/
module2.rs
3.
src/
main.rs
lib.rs
module1/
mod.rs
module2/
mod.rs
2, 3번 차이는 모듈 디렉터리 안에서 모듈 파일 이름을 어떻게 하냐 차이다. 공식 문서에는 하위 모듈이 없으면 2번, 하위 모듈이 있으면 3번으로 한다고 나왔는데 나는 하위 모듈을 만들기 때문에 3번처럼 하면 된다.
최종 모습은 아래처럼 나온다.
src/
authorize/
mod.rs
token.rs
info_struct/
mod.rs
me.rs
authorize나 info_struct안에 있는 하위 모듈을 쓰려면 mod.rs에 모듈을 선언해줘야 됨.
// mod.rs
...
...
pub mod token