http內部走的是socket/ (tcp/ip)。 默認狀況下,tcp / ip 是一個‘長鏈接’。php
長鏈接:與服務器創建鏈接以後,就不會自動斷開。聊天/推送 心跳包。是保證持續鏈接的持續。瀏覽器
短鏈接:一次鏈接,服務器只處理一個請求。而後自動斷開鏈接。緩存
http 是一個特殊處理的tcp/ip 協議。是一個短鏈接。安全
各瀏覽器HTTP Get請求URL最大長度並不相同,幾類經常使用瀏覽器最大長度及超過最大長度後提交狀況以下: IE6.0 :url最大長度2083個字符,超過最大長度後沒法提交。 IE7.0 :url最大長度2083個字符,超過最大長度後仍然能提交,可是隻能傳過去2083個字符。 firefox 3.0.3 :url最大長度7764個字符,超過最大長度後沒法提交。 Opera 9.52 :url最大長度7648個字符,超過最大長度後沒法提交。 Google Chrome 2.0.168 :url最大長度7713個字符,超過最大長度後沒法提交。服務器
//拼接網絡請求的字符串。?後面的就是你的Get請求的內容 NSString * string = [NSString stringWithFormat:@"http://127.0.0.1/login/login.php?%@",urlstring]; NSURL * url = [NSURL URLWithString:string]; // 建立網絡請求 NSURLRequest * request = [NSURLRequest requestWithURL:url]; //發送請求 [[[NSURLSession sharedSession] dataTaskWithRequest:request completionHandler:^(NSData* _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) { 請求回調成功 data數據就是你要的內容。 if (data && !error) { }] resume]; ``` ### 4.Post請求。 - post 請求的網絡請求須要是一個可變請求。 - post 請求須要設置 請求頭和請求體。 ### 5.Post請求的格式。 ```objc // 建立網絡請求 NSURL *url = [NSURL URLWithString:@"http://127.0.0.1/login/login.php"]; // 可變請求 NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:0 timeoutInterval:15]; // 設置請求方法 這裏的POST能夠大寫也能夠小寫。 request.HTTPMethod = @"POST"; // 這裏設置請求體。請求體的格式要求是NSdata格式 request.HTTPBody = ["這裏返回的是請求體。須要是NSdata格式"]; // 發送請求 [[[NSURLSession sharedSession] dataTaskWithRequest:request completionHandler:^(NSData * _Nullable data, NSURLResponse * _Nullable response, NSError * _Nullable error) { // 成功 if (data && !error) { }] resume];