• iOS学习笔记6GET POST方法 smallelephant_A


    GET

    在请求URL后面以?的形式跟上发给服务器的参数,多个参数之间用&隔开,比如http://ww.test.com/login?username=123&pwd=234&type=JSON

    注意:由于浏览器和服务器对URL长度有限制,因此在URL后面附带的参数是有限制的,通常不能超过1KB

    POST

    发给服务器的参数全部放在请求体中

    理论上,POST传递的数据量没有限制(具体还得看服务器的处理能力)

    选择GET和POST的建议

    (1)如果要传递大量数据,比如文件上传,只能用POST请求

    (2)GET的安全性比POST要差些,如果包含机密\敏感信息,建议用POST

    (3)如果仅仅是索取数据(数据查询),建议使用GET

    (4)如果是增加、修改、删除数据,建议使用POST

    iOS中发送HTTP请求的方案

    在iOS中,常见的发送HTTP请求(GET和POST)的解决方案有

    (1)苹果原生(自带)

    NSURLConnection:用法简单,最古老最经典最直接的一种方案

    NSURLSession:iOS 7新出的技术,功能比NSURLConnection更加强大

    CFNetwork:NSURL*的底层,纯C语言

    (2)第三方框架

    ASIHttpRequest:外号“HTTP终结者”,功能极其强大,可惜早已停止更新

    AFNetworking:简单易用,提供了基本够用的常用功能

    get:

    // 1.设置请求路径
    NSString *urlStr=[NSString stringWithFormat:@"http://192.168.1.53:8080/MJServer/login?username=%@&pwd=%@",self.username.text,self.pwd.text];
    NSURL *url=[NSURL URLWithString:urlStr];

    // 2.创建请求对象
    NSURLRequest *request=[NSURLRequest requestWithURL:url];

    // 3.发送请求

    post:

    // 1.设置请求路径
    NSURL *URL=[NSURL URLWithString:@"http://192.168.1.53:8080/MJServer/login"];//不需要传递参数

    // 2.创建请求对象
    NSMutableURLRequest *request=[NSMutableURLRequest requestWithURL:URL];//默认为get请求
    request.timeoutInterval=5.0;//设置请求超时为5秒
    request.HTTPMethod=@"POST";//设置请求方法

    //设置请求体
    NSString *param=[NSString stringWithFormat:@"username=%@&pwd=%@",self.username.text,self.pwd.text];
    //把拼接后的字符串转换为data,设置请求体
    request.HTTPBody=[param dataUsingEncoding:NSUTF8StringEncoding];

    // 3.发送请求

    相对POST请求而言,GET请求的所有参数都直接暴露在URL中,请求的URL一般会记录在服务器的访问日志中,而服务器的访问日志是黑客攻击的重点对象之一

    用户的隐私数据如登录密码,银行账号等。

  • 相关阅读:
    Hello & Goodbye
    如何将 SQL SERVER 彻底卸载干净
    C#中Split用法
    Tensorflow2(预课程)---7.4、cifar10分类-层方式-卷积神经网络-AlexNet8
    Tensorflow2(预课程)---5.3.2、手写数字识别-层方式-卷积神经网络-LeNet-5稍改
    Tensorflow2(预课程)---5.3、手写数字识别-层方式-卷积神经网络-LeNet
    LeNet-5详解
    卷积神经网络-LeNet
    LeNet结构详细分析
    降采样层和池化层的关系
  • 原文地址:https://www.cnblogs.com/adodo/p/5194202.html
Copyright © 2020-2023  润新知