我试图从存储我所有成绩的网站上拉我的学校成绩,但我在使用HTTP请求登录时遇到问题,并且拉下了下一页的信息。任何帮助表示赞赏:)如何取得网站上的成绩,并使用POST请求执行登录?
override func viewDidLoad() {
super.viewDidLoad()
let myUrl = NSURL(string: "https://homeaccess.katyisd.org/HomeAccess/Account/LogOn?ReturnUrl=%2fhomeaccess%2f")
let request = NSMutableURLRequest(URL: myUrl!)
request.HTTPMethod = "POST"
let postString = "User_Name=**hidden**&Password=**hidden**"
request.HTTPBody = postString.dataUsingEncoding(NSUTF8StringEncoding)
let task = NSURLSession.sharedSession().dataTaskWithRequest(request){
data,response,error in
if(error != nil){
print("error=\(error)")
return
}
print("response = \(response)")
// Print out response body
let responseString = NSString(data: data!, encoding: NSUTF8StringEncoding)
print("responseString = \(responseString)")
//Let’s convert response sent from a server side script to a NSDictionary object:
do{
var myJSON = try NSJSONSerialization.JSONObjectWithData(data!, options: .MutableLeaves) as? NSDictionary
if let parseJSON = myJSON {
// Now we can access value of First Name by its key
var firstNameValue = parseJSON["User_Name"] as? String
print("firstNameValue: \(firstNameValue)")
}
}catch{
print(error)
}
}
}
如果没有登录数据,很难判断出现什么问题......是不是有什么问题?你会得到什么错误?发生了什么问题?你到底有什么问题? –
没有打印在控制台内 – user6032625
没问题。这是有道理的,因为你根本没有触发请求。在代码末尾添加'task.resume()'... –