实际开发中 经常需要手动构造出HTTP协议的请求
- 通过html中的form表单
- 通过js的ajax
- Java代码(或者其他语言代码)
- 借助一些第三方工具
html编写要方便很多 不需要安装任何 编译环境 只要有 浏览器就可以了
例如创建一个文本
将后缀改成html
编写前端代码 也可以使用开发工具
(使用!tab就能生成这一段html的代码片段)起手式
html 开始标签
head /haed 包含了页面的属性 一般不会直接反应到页面
meta 单标签
body /body 显示在页面上
/html 结束标签
使用vscode
对于标签来说 可以写一些"属性"(键值对)action属性 描述了构造http请求 url 是什么 method 请求的方法
input标签在html中 变化多端 有多种形态 就是通过type这个类型 就是最简单的单行输入框
name 会作为参数被放到http请求的query string/body中 name中的a就是键值对的键 用户在输入框输入的内容就是键值对的值
构造一个提交按钮 点击这个就能发出请求
form表单只能支持get 和 post 不能支持 put/delete/options
ajax
ajax是一个js提供的一组api
js原生的ajax api非常不好用 所以我们通常会使用一个第三方库jQuery 只需要把jQuery引入代码中
我们可以从网上搜索
$ 在js中 是一个合法的变量名 就和abc count 之类
$ 这个变量就是在jQuery中已经定义好的
$ 这个对象里就有很多方法 就可以通过$的形式来调用对应的方法
$ ajax就是jQuery中封装好的 用来发起ajax的请求的方法
ajax的参数使用{ }来表示
type不仅支持get和post也支持各种其他方法
js中{ } 表示的是js对象(键值对)
{ }里可以有多个键值对
键值对之间使用 , 分割
键和值之间使用 : 分割
键固定都是string类型 可以写’ ‘也可以不写
success的值是一个函数 这个函数就会收到响应的时候 被浏览器自动调度 被浏览器自动调用这个函数的时候 就会把响应的body 通过参数传给这个函数
这个函数就是 回调函数
System.out.println
此处所谓的’异步’
js代码在执行ajax方法的时候 把请求发送出去之后 就会立既往下执行这个时候 还没有调用到success对应的方法 一直到响应回来 success才会被调用
还可以使用postman构造请求 自动生成代码