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];