首页 > 代码库 > 关于网络连接问题前期一直失败的原因
关于网络连接问题前期一直失败的原因
最开始一直失败是因为在login发送post指令时没有加入任何有关访问权限的代码,在研究过学长的OC代码之后,
发现他在init的时候获取了服务器cookie,并从cookie中提取出来csrftoken,并在login的时候加到访问的头部,作为
权限的标记。我经过尝试之后终于获取到了cookie,并将csrftoken加入httpURLConnection的头部,结果还是返回
403,我们在这里出现了好长时间的卡顿。
之后经过学姐的帮忙,终于明白了csrftoken并不是唯一的权限标识,而是需要将init得到的全部cookie加入到login
访问服务器的httpClient的头部,才能完成访问。二者的区别通俗点来讲相当于两个人访问一个服务器,两个人分别用A
和B表示,A负责init,B负责login。第一种方法好比A先初始化得到了访问权限的cookie,之后将得到的token交给B,
然后B拿着从A获得的token去访问,故服务器识别为权限不够。而第二种方法则相当于,A先初始化得到了访问权限的
cookie,然后将所得到的全部cookie包括token全部交给B,此时B相当于是A的复制,也就是相当于A再次去访问服务
器,故此时服务认为B拥有访问权限。(PS:本来以为httpUrlConnection与httpClient发送数据的格式不同,故开始
是用httpUrlConnection发送post指令,后来发现二者执行效果是等价的,故之后换用httpClient实现post请求)。
关于网络连接问题前期一直失败的原因
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。