API初心者の者です。
今ログイン機能を作成しようとしています。
ログインAPI仕様書では
Requestでkey が id , "hogehoge"のみ有効, password, "pass"のみ有効。
Responseはstatuscode 200なら成功、400なら失敗
statusmessage はsuccessです。
コードの前に自分が考えているログインの流れを書きます。
1ログイン画面でユーザーが入力したhogehogeとpassをサーバーにPOSTする。
2 二つとも合っていたらstatuscode 200で返ってきてuserTokenを取得できる。
id とpassが間違っていたらstatuscode400が返ってくる。
↑こちらで合っているのでしょうか?
自分が書いたコードは以下の通りです。返ってくるJSONはstatuscode 200 なんですが、パラメーターid と password を変えてもstatuscode 200で返ってきてsuccessとなっています。これはどうしてでしょうか?ご教授をお願いします・
Swift4
1mport UIKit 2import Foundation 3 4class ViewController: UIViewController { 5 6 override func viewDidLoad() { 7 super.viewDidLoad() 8 // Parameters 9 let parameters = ["id": "hogehoge", "password": "pass"] 10 // URL 11 guard let url = URL(string: "https://nakajyo.edadev.net/api/v1/Login.php?id=hogehoge&password=pass") else {return} 12 // Create URLRequest object 13 var request = URLRequest(url: url) 14 request.addValue("application/json", forHTTPHeaderField: "Content-Type") 15 //POSTを指定 16 request.httpMethod = "POST" 17 guard let httpBody = try? JSONSerialization.data(withJSONObject: parameters, options: []) else {return} 18 request.httpBody = httpBody 19 // session object作成 20 let session = URLSession.shared 21 session.dataTask(with: request) { (Data, URLResponse, Error) in 22 // RESPONSE 23 if let URLResponse = URLResponse { 24 print(URLResponse) 25 } 26 27 if let Data = Data { 28 do { 29 let json = try JSONSerialization.jsonObject(with: Data, options: []) 30 print(json) 31 }catch { 32 print(Error) 33 } 34 } 35 }.resume() 36 37 38 39 } 40 41 42} 43
あなたの回答
tips
プレビュー