API를 자주 사용하다보면 api 키를 입력해서 요청을 보내야 하는데 이 때 api 키는 외부에 유출이 되어서는 안된다. 그러기 위해서 이전에 작성한 TIL 처럼 .gitignore 파일을 사용해서 api키를 안보이게 감출 수 있는데 파일 곳곳에 api키가 존재하면 여러 파일을 숨겨야 하기 때문에 하나의 파일에 api 키들을 저장하고 사용하면 번거로운 작업을 여러번 할 필요 없이 하나의 파일만 숨기면 된다. 이 때 사용할 수 있는게 Property List 를 사용하는 것이다.
Porperty List 생성하기
property list를 생성하는 방법은 아주 간단하다. 우선 xCode 에서 프로젝트 폴더를 우클릭 한 후 New File 을 선택한 이후 PropertyList 를 선택해 생성하면 된다.
생성이 완료 되었다면 아래의 코드 처럼 생성이 될 텐데 여기서 필요한 api키만 추가하면 된다.
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>key 이름</key>
<string> api키 작성</string>
</dict>
</plist>
이런 식으로 api key를 작성하여 파일을 저정한다.
api key 사용하기
이후 저장한 api 키를 사용하기 위해서는 api키가 들어갈 곳에 변수를 하나 생성해서 key를 받아와 작성하면 된다.
class ViewController: UIViewController {
var apiKey: String {
get {
guard let path = Bundle.main.path(forResource: "property List 이름", ofType: "plist"),
let dict = NSDictionary(contentsOfFile: path) as? [String: AnyObject],
let key = dict["key 이름"] as? String else {
fatalError("API Key not found.")
}
return key
}
}
}
이런식으로 key를 받아오면 안전하게 api key를 사용할 수 있다. 또한 하나의 파일로 정리하여 .gitIgnore 에서도 여러번 작업할 필요 없이 하나의 파일만 처리하면 간편하게 키 유출 걱정을 할 필요가 없어진다.
'TIL(Today I Learned)' 카테고리의 다른 글
| 2024.05.16 Today I Learned (0) | 2024.05.16 |
|---|---|
| 2024.05.14 Today I Learned (0) | 2024.05.14 |
| 2024.05.10 Today I Learned (0) | 2024.05.10 |
| 2024.05.09 Today I Learned (0) | 2024.05.09 |
| 2024.05.07 Today I Learned (1) | 2024.05.07 |