0
我正在嘗試請求獲取源代碼。Swift:獲取請求獲取源代碼
我試過兩種不同的方法。這兩種工作。
但是這兩種方法不返回相同的源代碼,真正的一個,並通過真實的我的意思是當我與Firefox的網站上。例如,我點擊右鍵並顯示源代碼。
Firefox上的網站的源代碼有更多的信息,我的方法在swift中返回的代碼。
有什麼可以解釋的?
我的代碼:
class RequestApi {
func getMCPage() {
//propertiesMap = ReadProperties.getProperties()
let urlPath = "http://www.memecenter.com"
let url: NSURL = NSURL(string: urlPath as String)!
let session = NSURLSession.sharedSession()
let task = session.dataTaskWithURL(url, completionHandler: {data, response, error -> Void in
if((error) != nil) {
// Si une erreur survient lors de la requête web, l'afficher en console
print(error!.localizedDescription)
}
print("response : \(response)")
let strData = NSString(data: data!, encoding: NSUTF8StringEncoding)
print(strData!)
})
task.resume()
}
func getMCPage2() {
let url:NSURL = NSURL(string: "http://www.memecenter.com")!
do {
let urlContents = try NSString(contentsOfURL: url, encoding: NSASCIIStringEncoding)
print(urlContents)
} catch let error as NSError {
print(error.localizedDescription)
}
}
}
方法1和2回同樣的事情,這是從網站真正的不同。
THX
網站可能會在服務器端根據標題(如用戶代理或會話cookie)進行不同的呈現,或者它可能具有修改客戶端上的html的JavaScript – Paulw11
問題確實與用戶代理有關嗎?在nsurlconnection或nsurlsession中設置我自己的用戶代理?因爲我不想使用默認的源代碼,所以我需要從這個網址獲得的源代碼是像firefox這樣的隨便的瀏覽器,而不是移動瀏覽器的用戶代理 –