HTTP 之 请求方法(三)

embedded/2024/10/19 2:17:41/
http://www.w3.org/2000/svg" style="display: none;">

1. GET:请求指定的资源。

GET 请求应该只用于获取数据,而不会导致服务器上的状态变化。

//通常用于请求页面或数据。
fetch('http://www.example.com/data').then(response => response.json()).then(data => console.log(data)).catch(error => console.error('Error:', error));

2. POST:向服务器提交新的资源。

POST 请求通常用于表单提交或上传文件,数据在请求体中。

//提交用户注册信息。
fetch('http://www.example.com/register', {method: 'POST',headers: {'Content-Type': 'application/json',},body: JSON.stringify({username: 'newuser',password: 'newpass'})
})
.then(response => response.json())
.then(data => console.log('Registered:', data))
.catch(error => console.error('Error:', error));

3. PUT:更新服务器上的现有资源。

如果资源不存在,则可能会创建新资源。PUT 请求是幂等的。

//更新用户的配置信息。
fetch('http://www.example.com/settings', {method: 'PUT',headers: {'Content-Type': 'application/json',},body: JSON.stringify({theme: 'dark',notifications: true})
})
.then(response => response.json())
.then(data => console.log('Settings Updated:', data))
.catch(error => console.error('Error:', error));

4. DELETE:从服务器删除指定的资源。

DELETE 请求通常用于删除资源。

//删除用户的账户。
fetch('http://www.example.com/users/123', {method: 'DELETE'
})
.then(response => response.json())
.then(data => console.log('Delete Response:', data))
.catch(error => console.error('Error:', error));

5. HEAD:请求资源的响应头信息,不返回响应体。

HEAD 请求与 GET 类似,但不包括响应体。

//检查资源是否存在或获取资源的元数据。
fetch('http://www.example.com/image.png', {method: 'HEAD'
})
.then(response => {console.log(`Content-Type: ${response.headers.get('Content-Type')}`);
})
.catch(error => console.error('Error:', error));

6. OPTIONS:描述目标资源的通信选项。

OPTIONS 请求通常用于跨域资源共享(CORS)的预检请求。

//获取服务器支持的 HTTP 方法。
fetch('http://www.example.com/api/resource', {method: 'OPTIONS'
})
.then(response => response.json())
.then(data => console.log('Allowed Methods:', data))
.catch(error => console.error('Error:', error));

7. TRACE:沿着到目标资源的路径执行一个消息环回测试。

TRACE 请求通常用于诊断。
fetch('http://www.example.com/trace', {method: 'TRACE'
})
.then(response => response.text())
.then(data => console.log('Trace Response:', data))
.catch(error => console.error('Error:', error));

8. CONNECT:建立一个到服务器的隧道,通常用于 SSL 加密的代理请求。

不常用于前端开发中,主要用于通过代理服务器建立安全连接。
通常不会在前端代码中看到 CONNECT 方法的使用。

9. PATCH:对资源进行部分更新。

PATCH 请求允许只发送需要更新的部分数据。

fetch('http://www.example.com/users/123', {method: 'PATCH',headers: {'Content-Type': 'application/json',},body: JSON.stringify({email: 'newemail@example.com'})
})
.then(response => response.json())
.then(data => console.log('User Updated:', data))
.catch(error => console.error('Error:', error));

http://www.ppmy.cn/embedded/96187.html

相关文章

Unity求向量和平面的交点

已知条件:平面P的法向量,平面上的一点P0,直线L的方向向量,直线上的一点L0 公式推导: 主要是两点: 1.目标点T在直线上:TL0D*(D未知) 2.目标点T在平面上,则T…

论文阅读笔记:Efficient Teacher: Semi-Supervised Object Detection for YOLOv5

Efficient Teacher: Semi-Supervised Object Detection for YOLOv5 1 背景1.1 动机1.2 问题 2 创新点3 方法4 模块4.1 伪标签分配4.2 Epoch Adapter 5 效果5.1 与SOTA方法对比5.2 消融实验 论文:https://arxiv.org/pdf/2302.07577v3.pdf 代码:https://g…

Nuxt3【路由中间件】middleware

路由中间件类似路由守卫,即在导航到特定路由之前运行一段代码 内联路由中间件 在页面中定义的路由中间件,因没有名称,所以也叫匿名路由中间件 definePageMeta({middleware: [function (to, from) {console.log("执行了内联路由中间件&q…

使用SQL统计某个表每天的总量和增量

参考: 使用SQL统计某个表每天的总量和增量 https://blog.csdn.net/weixin_34060299/article/details/92286916/ https://blog.csdn.net/bisal/article/details/125437314 例子:一个user表 有user_id自增主键,还有create_time用户创建时间 …

数据库根据日期统计SQL编写记录

统计每天产生多少数据 SELECT to_char("日期字段",YYYY-MM-dd) time ,count(*) FROM "表名" GROUP BY time;统计每月产生多少数据 SELECT to_char("日期字段",YYYY-MM) time ,count(*) FROM "表名" GROUP BY time;统计每年产生多少数…

Ubuntu卸载NGINX

Ubuntu卸载NGINX 在Ubuntu上卸载NGINX,你可以使用以下步骤来完成: 停止NGINX服务(如果它正在运行): sudo systemctl stop nginx禁用NGINX服务(如果你不希望它在系统启动时自动启动)&#xff1a…

【区块链+金融服务】甘肃股权交易中心企业金融服务平台 | FISCO BCOS应用案例

甘肃股权交易中心股份有限公司(简称“甘肃股交中心”)与甘肃征信股份有限公司同属甘肃金控集团控股子公司, 在共同服务本地中小微企业发展中发挥了重要作用。甘肃股交中心目前使用深圳证券通信有限公司研发的区域股权综合金融服务平台&#x…

stable-diffusion-xl-refiner-1.0

1.前言 这是一个基于Latent Diffusion的生成模型。它的主要功能是对通过SDXL 1.0 base模型生成的初始图像进行进一步的细化和去噪处理,以提升图像的质量和细节表现。这里的“refiner”模型是专门设计用来在最后的降噪步骤中改进图像的。 2.与SDXL 1.0 base模型的区别…