话不多说我们直接上答案——————cyberpeace{7ce6590dfe1434a1d7cad2f39fc16791}
1.打开该网页我们看到出题人的第一个要求
首先我们需要了解什么是GET请求
GET
请求是 HTTP(Hypertext Transfer Protocol,超文本传输协议)协议中的一种基本请求方法,用于请求指定的页面信息,并返回实体主体给客户端。GET
请求是最常用的 HTTP 请求方法之一,主要用于数据的查询
URL 传递数据:GET
请求通过 URL 的查询字符串(query string)来传递数据,即 URL 后面跟着的 ?
后面的部分。查询字符串中的每个参数由 &
分隔,每个参数由 =
连接键和值。例如:http://example.com/search?q=http&limit=1如果我们需要进一步的增加参数可以用"&"连接
http://61.147.171.105:49178/?a=1
2.当我们用GET传入a=1的参数后我们发现出题人让我们用POST方法再次传入b=2的参数
POST请求有一个初步的了解
POST请求是HTTP(Hypertext Transfer Protocol,超文本传输协议)协议中定义的一种请求方法,主要用于向服务器提交数据并创建新资源
定义与用途
- 定义:POST请求是HTTP协议中用于向服务器提交数据的一种请求方法。与GET请求不同,POST请求通常用于提交表单数据、上传文件或在服务器上执行某些操作。
- 用途:POST请求广泛用于需要用户输入或提交数据的场景,如用户注册、登录、提交表单、上传文件等。
特点
- 数据放在请求体中:POST请求的数据被包含在请求体中,而不是像GET请求那样放在URL的查询字符串中。这使得POST请求能够传输大量数据,且数据对用户不可见,提高了安全性。
- 可发送大量数据:由于数据放在请求体中,POST请求不受URL长度的限制,因此可以发送大量数据,适用于文件上传等场景。
- 安全性较高:虽然POST请求本身并不直接提供加密或安全传输的功能,但由于数据不暴露在URL中,相比GET请求,它在一定程度上提高了数据传输的安全性。然而,为了确保数据的安全传输,仍需使用HTTPS等加密协议。
- 非幂等性:POST请求通常是非幂等的,即多次执行相同的POST请求可能会对服务器上的资源产生不同的影响。例如,第一次提交表单可能创建了一个新资源,而再次提交相同的表单可能会导致错误或重复创建资源。
- 下图为POST的实现方式
POST /login HTTP/1.1
Host: example.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 27
b=2
对于这道题我们可以使用POSTMAN或者用python写一个脚本来实现,
如下Python脚本
import requests
# 目标URL
url = 'http://61.147.171.105:49178/?a=1/POST'
# 参数字典
data = {
'b': '2'
}
# 发送POST请求
response = requests.post(url, data=data)
# 打印响应内容
print(response.text)
我们运行该脚本得到网页数据
得到本题答案 :cyberpeace{7ce6590dfe1434a1d7cad2f39fc16791}