您好我想創造與SWIFT 3的應用程序,允許用戶輸入自己的用戶名和密碼的文本字段,並按下登錄按鈕將登錄到這個網站:https://login.utexas.edu/login/UI/Login登錄網站迅速使用alamofire
我希望它能夠對用戶進行身份驗證並存儲令牌,以便我可以重定向到:https://utdirect.utexas.edu/registration/classlist.WBX 以獲取html併爲該課程刮取網頁。
@IBOutlet weak var uteid: UITextField!
@IBOutlet weak var password: UITextField!
var parameter: Parameters = [:]
var requestID: String = ""
var sunQueryParamsString: String = ""
var hiddenFields: String = ""
@IBAction func postRequest(_ sender: Any) {
let urlString = "https://utdirect.utexas.edu/registration/classlist.WBX"
Alamofire.request(urlString).responseString { response in
print("\(response.result.isSuccess)")
if let html = response.result.value {
if let doc = Kanna.HTML(html: html, encoding: String.Encoding.utf8) {
// Search for nodes by CSS selector
print("\nrequestID")
for show in doc.css("input[name='login_param_RequestID']") {
self.requestID=show["value"]!
print(show["value"] as Any)
}
print("\nsunQueryParamsString")
for show in doc.css("input[name='SunQueryParamsString']") {
self.sunQueryParamsString=show["value"]!
print(show["value"] as Any)
}
print("\nhiddenFields")
for show in doc.css("input[type='hidden']") {
self.hiddenFields=show["value"]!
print(show["value"] as Any)
}
}
}
//creating dictionary for parameters
self.parameter = [
"login_uri":"/login/cdcservlet",
"login_param_RequestID":self.requestID,
"login_param_ProviderID":"https://utdirect.utexas.edu:443/amagent?Realm=/admin/utdirect-realm",
"goto":"https://utdirect.utexas.edu:443/registration/classlist.WBX",
"SunQueryParamsString":self.sunQueryParamsString,
"IDToken1": self.uteid.text!,
"IDToken2": self.password.text!,
"IDButton": "Submit"
]
//Wait for the GET request to complete, and then send the POST request: <<==
Alamofire.request (urlString,method: .post, parameters: self.parameter).responseString { response in
print("\(response.result.isSuccess)")
print(response)
}
}
}
這不是一個軟件交付網站。閱讀[here](https:// stackoverflow。com/help/how-to-ask)如何正確詢問 –
@JoaoVitorino但我不知道如何使用alamofire登錄和驗證用戶,我找不到任何東西來幫助我 –
首先發布你的代碼,您已經完成了解決問題的工作,您期望的輸出是什麼,並告訴發生了什麼問題。直到現在,您只是要求我們爲您的 –