Alamofire를 활용한 네트워크 통신 - get/post

이지수·2023년 5월 25일
0

Swift학습

목록 보기
2/14
post-thumbnail

code

//
//  ViewController.swift
//  AlamofireTest
//
//  Created by 이지수 on 2023/05/25.
//

import UIKit
import Alamofire

class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        
        //getTest()
        postTest()
    }
    
    func getTest(){
        let url = "https://jsonplaceholder.typicode.com/todos/1"
        AF.request(url,
                   method: .get,
                   parameters: nil,
                   encoding: URLEncoding.default,
                   headers: ["Content-Type":"application/json","Accept":"application/json"])
        .validate(statusCode: 200..<300)
        .responseJSON{(json) in
            print(json)
        }
    }
    
    func postTest(){
        let url = "https://reqres.in/api/login"
        var request = URLRequest(url: URL(string: url)!)
        request.httpMethod = "POST"
        request.setValue("application/json", forHTTPHeaderField: "Content-Type")
        request.timeoutInterval = 10
        
        let params = ["email":"user0001", "password":"pwd1234"] as Dictionary
        
        do {
            try request.httpBody = JSONSerialization.data(withJSONObject: params, options: [])
            
        } catch {
            print("HTTP body error")
        }
        AF.request(request).responseString{ (response) in
            switch response.result {
            case .success:
                print("Success")
            case .failure(let error):
                print("Alamofire Request Error \n Code:\(error._code),Message:\(error.errorDescription)")
                
            }
        }
    }
    


}

result


사용

  • Alamofire
  • reqres.in - POST 테스트용
profile
iOS 개발자 꿈나무

0개의 댓글