文档章节

Http请求总结

浮躁的码农
 浮躁的码农
发布于 2015/07/20 11:54
字数 483
阅读 22
收藏 2

1、请求本身需要的内容

    1.1、建立连接

    1.2、设置请求属性:(不是响应属性哦)

           请求方法或是请求类型:get/post

            contentType:

                如果是一般的请求:"application/x-www-form-urlencoded; charset=UTF-8",意思是告诉服务器,我的请求是普通的表单方式,组装形式即key1=value1&key2=value2&key3=value3的形式,以这样的组装方式传给你

                如果是文件上传:“multipart/form-data”,意思是提交的是文件。

                如果是json-rpc:"application/json-rpc",意思是告诉服务器,我的请求参数是一个json字符串,不再是普通的key=value的形式了。

               如果是conn.setRequestProperty("Content-Type","application/json");,则服务端直接可以用获取流的方式进行获取

                --------------------------------------------------------------------------------------------------------------------------------------------------

    1.3、接收的响应类型:"text/xml,text/javascript,text/html"

    1.4、写请求参数:按照前面设置好基本信息之后,开始写入请求参数。

2、ajax(web前端)和java(后台建立请求的方式)实现请求。

    2.1、java

           2.1.1、java请求的核心是HttpURLConnection类。以这个类为壳进行封装。如下所示:      

HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod(method);
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setRequestProperty("Accept","text/xml,text/javascript,text/html");
conn.setRequestProperty("User-Agent", "Amos");
conn.setRequestProperty("Content-Type", ctype);
-------------------------------------------------------------
//以上基本信息设置好之后要将参数写入:
OutputStream out = conn.getOutputStream();
out.write(content);
-------------------------------------------------------------
//写入信息后,获取服务器返回信息
InputStream rsp =  conn.getInputStream();


    2.2、ajax


$.ajax({
    type : "post",(告诉服务端请求方式是什么)
    url : encodeURI(encodeURI(cxt + url)),
    data : data,(传给服务端的数据)
    dataType : "html",(前端需要服务器的响应类型)
    contentType: "application/x-www-form-urlencoded; charset=UTF-8",(前端传参的内容类型)
    async: true,
    cache: false,
    success:function(returnData){
	$("#" + divId).html(returnData);
    },
    error: function(XMLHttpRequest, textStatus, errorThrown) { 
    complete: function(XMLHttpRequest, textStatus) { 
	$.unblockUI();
    }
});

ajax并没有建立连接的语句,是因为浏览器会做这些事情。

由以上ajax和java可以看出,尽管请求的代码不同,但是原理是一样的。

© 著作权归作者所有

浮躁的码农

浮躁的码农

粉丝 71
博文 856
码字总数 156434
作品 0
松江
程序员
私信 提问
HTTP入门(一):在Bash中curl查看请求与响应

HTTP入门(一):在Bash中curl查看请求与响应 HTTP 本文简单总结HTTP的请求与响应。 本文主要目的是对学习内容进行总结以及方便日后查阅。 详细教程和原理可以参考[HTTP文档(MDN)][1]。 本...

马涛涛_风
2018/03/22
0
0
计算机网络:这是一份全面& 详细 HTTP协议 学习攻略

前言 网络通信协议在任何的开发工作中都非常重要 今天,我将献上一份的说明指南,希望你们会喜欢 ps:最近在筹备一个”和我一起写Android“的活动,需要各大读者的帮忙,希望能看文章参与哦:...

Carson_Ho
03/25
0
0
Scrapy1.4最新官方文档总结 1 介绍·安装

Scrapy1.4最新官方文档总结 1 介绍·安装 Scrapy1.4最新官方文档总结 2 Tutorial Scrapy1.4最新官方文档总结 3 命令行工具 《Learning Scrapy》这本书是2016年1月出版的,作者使用的版本是S...

seancheney
2017/10/02
0
0
【总结】iOS9报错问题集合

【此文章将持续更新,总结常见报错,供大家参考,有自己总结的也会有Google的】 1、网络请求报错 App Transport Security has blocked a cleartext HTTP (http://) resource load since it i...

卡奇匠
2016/03/30
71
0
JAVAWeb对ajax中get与post的使用

JAVAWeb对ajax中get与post的使用 01.使用背景及ajax的介绍 在进行javaWeb的开发中难免会遇到异步请求的情况,为了使网站局部的信息发生变化,而不影响整个页面的话,博主知道的也只用ajax了。...

meiqi0538
2018/04/04
0
0

没有更多内容

加载失败,请刷新页面

加载更多

在阿里云ecs服务器(linux之centos系统)安装调试nginx

购买阿里云ecs服务器实例 由于这里只是测试,我们就随便买一个(当然我就选最便宜的了,这里的抢占式实例测试完可以直接释放) 选择centos7.6镜像 点击下一步:网络和安全组 接下来选中开通h...

祖达
昨天
0
0
【阴阳师】真蛇10层记录

蛇切黑体系 追月神 散件一速,速度越高越好(220+) 镰鼬 招财二速,速度211以上; 山兔 火灵三速,速度180-200均可; 丑女 心眼四速,速度170左右即可; 大蛇 蚌精暴击套。速度高于阴阳师即...

Areya
昨天
4
0
js动态设置元素高度

this.$refs.xxx.style.height= this.contentHeight; 元素需要绑定

Carbenson
昨天
2
0
今天的学习

今天学到了ci框架中的查询语句的where条件语句: 1、$this->db->select('')->from('')->where('id = ??')->get()->result_array();2、$this->db->select('')->from('')->where('id', '??'......

墨冥
昨天
2
0
MySQL在高并发下的订单撮合、系统使用、共享锁与排他锁保证数据一致性

前序 距离上次择文发表,两月余久。2018年也即将要结束了,目前的工作依然是与区块链应用相关的,也很荣幸在9月初受邀签约出版暂名为《区块链以太坊DApp实战开发》一书,预计在明年年初出版。...

我最喜欢三大框架
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部