IOS 网络浅析-(四 get&post)

来源:互联网 发布:mysql redis 实时同步 编辑:程序博客网 时间:2024/05/16 08:50

IOS 网络浅析-(四 get&post)

网络请求默认是get

网络请求有很多种:GET查  POST改  PUT增  DELETE删 HEAD

在平时开发中主要用的 是 get 和 post.

get 获得数据 (获取用户信息)

get 请求是没有长度限制的,真正的长度限制是浏览器做的,限制长度一般2k

get 请求是有缓存的,get 有幂等的算法

get  http://localhost/login.php?username=xubaoaichiyu&password=123456

请求参数暴露在url里

get请求参数格式:

?后是请求参数

参数名 = 参数值  

& 连接两个参数的

post 添加,修改数据 (上传或修改用户信息)

post 请求是没有缓存的

http://localhost/login.php

post 也没有长度限制,一般控制2M以内

post 请求参数不会暴漏在外面 ,不会暴漏敏感信息

请求是有:请求头header,请求体boby(post参数是放在请求体里的)

get代码如下:

复制代码
////  ViewController.m//  CX-get////  Created by ma c on 16/3/17.//  Copyright © 2016年 xubaoaichiyu. All rights reserved.//#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];        //使用get请求,获取接口        NSString * String = @"http://localhost/login.php";        //拼接参数    NSString * urlString = [NSString stringWithFormat:@"%@?username=xubaoaichiyu&password=123456",String];        //如果有中文进行转码        urlString = [urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];        NSURL * url = [NSURL URLWithString:urlString];        NSURLRequest * request = [[NSURLRequest alloc]initWithURL:url cachePolicy:0 timeoutInterval:15];        [NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) {                NSString * string = [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];                NSLog(@"%@",string);            }];}@end
复制代码

post:

复制代码
////  ViewController.m//  CX-post////  Created by ma c on 16/3/17.//  Copyright © 2016年 xubaoaichiyu. All rights reserved.//#import "ViewController.h"@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad {    [super viewDidLoad];        //使用post请求    //获取接口    NSString * string = @"http://localhost/login.php";        //中文转码    string = [string stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];        NSURL * url = [NSURL URLWithString:string];        //可变请求    NSMutableURLRequest * requst = [[NSMutableURLRequest alloc]initWithURL:url cachePolicy:0 timeoutInterval:15];        //设置传输方式        requst.HTTPMethod = @"POST";        NSString * bodyString = [NSString stringWithFormat:@"username=xubaoaichiyu&password=123456"];        //设置请求体        requst.HTTPBody = [bodyString dataUsingEncoding:NSUTF8StringEncoding];        [NSURLConnection sendAsynchronousRequest:requst queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) {                NSString * string = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];                NSLog(@"%@",string);            }];    }
复制代码

 

分类: IOS 网络
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 软顶帽子踏顶了怎么办 戴草帽总往下掉怎么办 白鞋子低帮发黄怎么办 跳伞的时候降落伞打不开怎么办 收腹裤穿着总是往下卷怎么办? 结婚打了黑伞怎么办 酷派x7开不了机怎么办 脸书账号被禁用怎么办 文档变成了d盘怎么办? 派派背包满了怎么办 黑裤子掉颜色了怎么办 快递被别人领走怎么办 绒面靴子长霉了怎么办 新买的鞋子开胶怎么办 白色的皮鞋边发黄怎么办 新鞋大拇指顶脚怎么办 耐克标志开胶了怎么办 鞋开胶了怎么办不用胶 gta按home没反应怎么办 gta5线上车没了怎么办 吃了粘壳的鸡蛋怎么办 gta5短信删错了怎么办 电风扇2档3档开好关不管用怎么办 gta5把车替换了怎么办 gta5任务完成后卡了怎么办 gta5车被扣押了怎么办 侠盗猎车手5卡怎么办 英雄联盟转区后没法快捷施法怎么办 欠太多人的钱怎么办 我欠了很多钱怎么办 输了那么多钱我该怎么办 家里欠了钱我该怎么办 欠了好多钱我该怎么办 赌球输了好几千怎么办 欠信用卡的人死了怎么办 欠别人钱人死了怎么办 别人欠我钱人死了怎么办 美国生娃孩子怎么办医保 黑在美国病了怎么办 在外打工房租太贵怎么办 在外面打工房租租不起怎么办