美文网首页
POST 请求和 GET 请求

POST 请求和 GET 请求

作者: 叶飞楼 | 来源:发表于2016-04-06 13:57 被阅读0次

1.来自这篇文章 

HTTP 有八种请求(也称方法),其中最常见的是 GET 请求和 POST 请求。

GET 请求通常用于查询、获取数据,而 POST 请求则用于发送数据,除了用途上的区别,它们还有以下这些不同:

1.GET 请求可以被缓存,可以被收藏为书签,但 POST 不行。

2.GET 请求会保留在浏览器的历史记录中,POST 不会。

3.GET 请求的长度有限制(不同的浏览器不一样,大约在几 Kb 左右),URL 的数据类型只能是 ASCII 字符,POST 请求没有限制。

4.GET 请求的参数在 URL 中,因此绝不能用 GET 请求传输敏感数据。POST 请求数据则写在 HTTP 的请求头中,安全性略高于 GET 请求。

注意:

POST 请求仅比 GET 请求略安全一点,它的数据不在URL中,但依然以明文的形式存放于 HTTP 的请求头中。

2.补充 

URL的请求方式

网络请求方式有两种:GET 和 POST

两种方式的相同点是:

都能给服务器传输数据

两种请求方式的不同点是:

1、给服务器传输数据的方式:

GCT:通过网址字符串

POST:通过data

2、传输数据的大小:

GET:网址字符串最多255字节

POST:使用NSData,容量超过1G

3、安全性:

GET:所有传输给服务器的数据,显示在网址里,类似于密码的明文输入,直接可见

POST:数据被转成NSData(二进制数据),类似于密码的密文输入,无法直接读取

连接方式

同步连接:程序容易出现卡死现象

异步链接:等待数据返回

异步链接有两种实现方式:

设置代理,接受数据

实现block

请求方法(AFN2.0)

post

+ (void)asynPostRequestFromeNetWithUrl:(NSString *)urlString andParam:(NSDictionary *)dic success:(void (^)(id responseObject))success failure:(void (^)(NSError *error))failure {

NSString *urlStr = [NSString stringWithFormat:@"%@%@",BASE_API_URL,urlString];

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];

manager.requestSerializer = [AFJSONRequestSerializer serializer];

[manager.requestSerializer setTimeoutInterval:REQUEST_TIME_OUT_SECOND];

[manager POST:urlStr parameters:dic success:^(AFHTTPRequestOperation *operation, id responseObject) {

if (success) {

success(responseObject);

}

} failure:^(AFHTTPRequestOperation *operation, NSError *error) {

if (failure) {

failure(error);

}

}];

}

get

+ (void)asynGetRequestFromeNetWithUrl:(NSString *)urlString andParam:(NSDictionary *)dic success:(void (^)(id responseObject))success failure:(void (^)(NSError *error))failure {

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];

[manager GET:urlString parameters:dic success:^(AFHTTPRequestOperation *operation, id responseObject) {

if (success) {

success(responseObject);

}

} failure:^(AFHTTPRequestOperation *operation, NSError *error) {

if (failure) {

failure(error);

}

}];

}

相关文章

  • Get和Post的区别

    Get请求和Post请求区别如下: Post请求比Get请求更安全,get请求直接将参数放置在URL中,post请...

  • java笔试题1

    请简述http协议中get请求和post请求的区别答: 1. get请求比post请求快。 2. get请求传参时...

  • axios中get请求与post请求的简单函数封装

    axios中get请求与post请求的简单函数封装 今天写点什么呢,就写写如何将axios的post请求和get请...

  • 网络编程(01)NSURLConnection

    一 GET请求和POST请求的区别 GET请求和POST请求的区别主要是体现在数据的传递上. GET请求相对于PO...

  • get和post请求区别

    get请求和post请求 差别 get请求回退时无反应,post请求回退时会再次发起请求。 GET请求只能进行ur...

  • java 面试题1(基础)

    1、请简述http协议中get请求和post请求的区别 可参考此文章 1、GET - 从指定的资源请求数据。 查询...

  • 装饰器-验证API入参

    这里主要验证GET请求和POST请求 GET传参 GET把参数包含在URL中 POST传参 POST参数放到bod...

  • HTTP协议相关

    HTTP超文本传输协议 HTTP的请求方式有哪些?GET请求和POST请求的区别?HTTP请求的特点 HTTP的请...

  • iOS开发知识点

    get请求和post请求 提交用户的隐私数据一定要使用POST请求,相对于POST请求而言,GET请求的所有参数都...

  • iOS开发网络篇—GET请求和POST请求

    GET请求和POST请求简单说明 创建GET请求: // 1.设置请求路径 NSString *urlStr=[...

网友评论

      本文标题:POST 请求和 GET 请求

      本文链接:https://www.haomeiwen.com/subject/gogpkttx.html