์ฐ๋ฆฌ ์๋ฒ์ json ํ์์ผ๋ก ํฐ๋ฒํธ ๋๊ฒผ๋๋ ์๊พธ ๋ณ์ ๋ถ์กฑ ์๋ฌ ์ฝ๋ ๋ธ -> ์๋ฒํ์ ๋ฌผ์ด๋ด -> ์๋ฒ์ ๋ฐ์ดํฐ ๋ณด๋ผ ๋ json ๋ง๊ณ form-data ํ์์ผ๋ก ๋ณด๋ด ๋ฌ๋ผ๊ณ ํจ -> ๊ทธ๋ฐ๋ฐ Alamofire์ form-data ํ์์ผ๋ก ์ ๋ก๋ํ ์ ์๋ ๋ฉ์๋๊ฐ ์์๋ค!!!!
ํ์ ํ๋ ๊ฒ์ฒ๋ผ(line 8์ ์ฃผ์ ์ฒ๋ฆฌํ ๋ถ๋ถ) request๋ฅผ ๋ณด๋ด๋ ๋ฉ์๋๊ฐ ์๋๋ผ, ์๋ฒ์ ์ ๋ก๋ํ๋ ๊ฐ๋ ์ธ ๋ฏ. ์๋ฌดํผ multipartFormData ํ์ฉํด์ ํด๋ํฐ ๋ฒํธ ๋ฃ์๋๋ ์ ๋๋ก ์์ฒญ์ด ์ ์ก๋๋ค. ๐ฅบ
//MARK: SMS request
// API ํธ์ถ
let paramForSMS:Parameters = ["userphonenum": phoneField.text]
let url = "์ฌ๊ธฐ์ url ์ฃผ์ ๋ฃ์ผ์ธ์!!!"
let call = AF.upload(multipartFormData: { multipartFormData in
multipartFormData.append((self.phoneField.text!).data(using: .utf8)!, withName: "userphonenum")
}, to: url)
//let call = AF.request(url, method: HTTPMethod.post, parameters: paramForSMS, encoding: MultipartFormData.self as! ParameterEncoding)
// ์๋ฒ ์๋ต๊ฐ ์ฒ๋ฆฌ
call.responseJSON { res in
// JSON ํ์์ผ๋ก ๊ฐ์ด ์ ๋๋ก ์ ๋ฌ๋์๋์ง ํ์ธ
guard let jsonObject = try! res.result.get() as? [String:Any] else {
self.alert("์๋ฒ ํธ์ถ ๊ณผ์ ์์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค.")
print("์๋ฒ ํธ์ถ ์ค๋ฅ")
return
}
// ์๋ต ์ฝ๋ ํ์ธ. 0(true)์ด๋ฉด ์ฑ๊ณต
let resultCode = jsonObject["result"] as! String
if resultCode == "success" {
self.alert("์ธ์ฆ ๋ฒํธ๊ฐ ์ ์ก๋์์ต๋๋ค.")
print("sms ์ ์ก success with \(resultCode)")
} else { // ์๋ต ์ฝ๋๊ฐ true๊ฐ ์๋ ๋์๋ ์คํจ
self.alert("ํด๋ํฐ ๋ฒํธ๋ฅผ ํ์ธํด ์ฃผ์ธ์.")
print("sms ์ ์ก ์คํจ with \(resultCode)")
}
}
