【攻防世界】get_post
难度:1
方向:Web
题目描述: X老师告诉小宁同学HTTP通常使用两种请求方法,你知道是哪两种吗?
题目界面
本人思考
1. get方法请求
题目提示用GET方式提交一个名为a,值为1的变量,所以,get提交方式带参数就是直接在后面加一个 ?ke=value 即可(注意 打 ? 要用切到英文输入法)
2. post方法请求
get方法请求后,出现上图的进一步要求,要求用post请求且带参数b=2,用浏览器实现post请求发送方法如下。
fetch(new Request('url',{
method:'POST',
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
body:"param1=value1¶m2=value2"
})).then((resp)=>{console.log(resp)})
其中把url改为自己路径的url即可,我这里是
http://61.147.171.105:49911/?a=1(记住这里的a=1不能去掉,如果去掉,后面也会提示你要添加的)
首先F12 打开控制台,把上面的代码复制,把url写成自己的,把body里面的内容写成 b=2,记得要写自己的url!!
fetch(new Request('http://61.147.171.105:49911/?a=1',{
method:'POST',
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
body:"b=2"
})).then((resp)=>{console.log(resp)})
先是发起post请求,在控制台上面复制该代码然后回车,然后就去网络那个选项卡难办查看响应
下面就是响应,可以看到已经出现了flag值了
总结
该题主要考察了如何在浏览器发起get和posy请求,并学习这两个请求方式,post请求的发起还有很多其他方法,比如postman等等,可以自行了解或者评论区交流