网络请求实战-RESTFUL约定和Postman工具

news2024/10/8 18:28:08

RESTFUL协议

表现层状态转化(Representational state transfer)

 

资源、表示和转换

  • 资源(Resource)

服务端的一个资源

拥有URL

  • 表示(Representation)

服务端的资源在客户端的表示

客户端拥有操作服务端资源的方法

  • 转换(Transfer)

客户端收到新的表示,从而向用户展示新的内容

约定

  • 资源命名

名词性词组

下单:/makeOrder -> POST /order

用户登录:/user/login -> /token

  • 状态

客户端无状态(资源表示->展示)

产品列表:GET /products -> 产品列表组件

  • 统一

资源ID /product/123

描述性强:HTTP状态码、规范的协议

CURD(约定)

  • GET /product?{query}
  • GET /product/123
  • POST /product
  • PUT /product/123
  • DELETE /product/123

RESTFUL优点

  • 客户端无状态(简化开发)
  • 资源独立、接口间独立(缓存好设计) (服务端架构趋势-领域驱动)
  • 对协议依赖不严重(可迁移)(这套约定可用于APP,桌面端应用,不仅限于HTTP)

问题:服务端建设不够领域化(导致:相同资源不同字段)

  • /GET /product/123?includes=id,name,date,desc
  • /GET /product/123?includes=id,name,desc,color

Postman使用方法

API开发的协作工具

  • 接口清单(文档)https://documenter.getpostman.com/view/17665340/UUxxgo3d#intro
  • 接口开发(测试)

https://learning.postman.com/docs/writing-scripts/test-scripts/

  • 分享(协作)
  • Mock数据

可以参考文章Postman接口测试-基础教程2021年9月版

小结

  • 从RESTFUL角度:前端不是无状态,而是无业务状态
  • Mock数据和接口测试的其他方法

Mock.js

Mocha/jest......

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/433100.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

three.js之scene

THREE.Scene对象有时被称为场景图,可以用来保存所有图形场景的必要信息。在Three.js中,这意味着THREE.Scene保存所有对象、光源和渲染所需的其他对象。 本节主要是构建一个基本场景,然后可以通过gui添加,删除场景里的对象等。 效果…

lua变量、数据类型、if判断条件和数据结构table以及【lua 函数】

一、lua变量【 全局变量和局部变量和表中的域】 Lua 变量有三种类型:全局变量和局部变量和表中的域。 ▪ 全局变量:默认情况下,Lua中所有的变量都是全局变量。 ▪ 局部变量:使用local 显式声明在函数内的变量,以及函数…

Golang每日一练(leetDay0040)

目录 118. 杨辉三角 Pascals Triangle 🌟 119. 杨辉三角 II Pascals Triangle II 🌟 120. 三角形最小路径和 Triangle 🌟🌟 🌟 每日一练刷题专栏 🌟 Golang每日一练 专栏 Python每日一练 专栏 C/…

港联证券策略:A股市场短期预计将保持区间震荡

港联证券以为,跟着4月30日的接近,一切板块的年报以及一季度报将进入密布发表期。从历史数据来看,4月中旬今后指数震动调整的概率较大,在操作上需注意操控全体仓位。从板块方面看,近期为数字经济和中特估双主线驱动的行…

Adobe lr中文版下载官方版 专业摄影师的必备软件 附各个平台

说到修图软件,大家第一时间一定都能联想到Adobe旗下的Photoshop(Adobe Photoshop CC)和Lightroom(Adobe Photoshop Lightroom CC),其中PhotoShop很多设计师都找到了对应的手机版,但有些用户由于…

MacOS 上安装并配置 OpenJDK 图文详细版

1、概述 1.1、什么是 OpenJDK ? OpenJDK 是 Java 的一个开源实现,由 Sun Microsystems 于2006年开始发布,是 Java SE 平台(Java Standard Edition)的参考实现之一。OpenJDK 是由 GPL v2 授权下的自由软件&#xff0c…

Msray-Plus采集工具帮您快速获取数据,让您的市场营销更加精细

随着互联网的不断发展,数据已经成为企业竞争的重要资产之一。市场营销人员需要通过数据来了解客户需求、市场趋势和竞争对手情况,从而制定更加精细的市场营销策略。然而,采集数据并不是一件容易的事情,需要耗费大量的时间和精力。…

Java多线程基础学习(一)

1. 创建线程 1.1 通过构造函数:public Thread(Runnable target, String name){} 或:public Thread(Runnable target){} 示例: Thread thread1 new Thread(new MyThread(), "mythread"); class MyThread extends Thread(){public void …

天阳转债上市价格预测

天阳转债 基本信息 转债名称:天阳转债,评级:AA-,发行规模:9.75亿元。 正股名称:天阳科技,今日收盘价:15.68元,转股价格:14.92元。 当前转股价值 转债面值 / …

RHCE---服务+ansible

一、命令提示符颜色 也可以写入配置文件/etc/profile [rootmaster ~]# vim .bashrc 绿色: PS1\[\033[01;32m\]\u\H:\[\033[01;34m\]\w\$\[\033[00m\] 粉红色: PS1\[\e[1;35m\]\u\h:\[\e[0m\]\[\e[1;33m\]\w\[\e[1;35m\]\[\e[0m\]\[\e[1;34m\]\$ \[\e[0…

[架构之路-168]-《软考-系统分析师》-4-据通信与计算机网络-4/5- 常见网络设备与网络工程

目录 4 . 4 网络互连与常用设备 1 . 网络互连设备 2 . 交换技术 3 . 路由技术 4 . 5 网络工程 4.5.1 网络规划(要做什么?打算怎么做? 什么时间做?) 1 . 网络需求分析 2 . 可行性研究 3 . 对现有网络的分析与描…

【Dom获取属性操作】JavaScript 全栈体系(十)

Web APIs 第四章 操作元素属性 一、操作元素常用属性 还可以通过 JS 设置/修改标签元素属性&#xff0c;比如通过 src更换 图片最常见的属性比如&#xff1a; href、title、src 等语法&#xff1a; 对象.属性 值 <!DOCTYPE html> <html lang"en">&…

【c#串口通信(4)】串口调试助手的使用

前言: 关于本文中使用到的串口助手工具,订阅专栏后,加入vip群,即可在群文件免费下载 1、打开串口 1.1 选择端口号 在下图的箭头所指处,选择下拉框中你想打开的串口,因为我之前使用虚拟串口工具虚拟了COM1、COM3,所以我可以先选择COM2 1.2 设置好参数 1.2.1 波特率:…

Python数据结构与算法篇(九)--单调栈与单调队列

1 单调栈 1.1 介绍 栈&#xff08;stack&#xff09;是很简单的一种数据结构&#xff0c;先进后出的逻辑顺序&#xff0c;符合某些问题的特点&#xff0c;比如说函数调用栈。 单调栈实际上就是栈&#xff0c;只是利用了一些巧妙的逻辑&#xff0c;使得每次新元素入栈后&#x…

rhcse中配置DNS的正反向解析

实验一 正向解析 服务端ip 192.168.9.30 客户端ip 192.168.9.31 网址 www.openlab.com 安装DNS软件 服务端 [rootlocalhost ~]# yum install bind -y 客户端与服务端相同 编辑DNS主配置文件 修改其中的11和19行 listen-on port 53 { any; }; allow-query { a…

homeassistant配置MQTT集成以及传感器实体(STM32连接进入homeassistant)

大家可以看作者的小破站教学视频&#xff08;如果喜欢的话可以点个关注&#xff0c;给个三联&#xff01;啊哈哈哈哈哈哈&#xff09;&#xff1a; 【homeassistant配置MQTT集成以及传感器实体&#xff08;STM32连接进入homeassistant&#xff09;】 最近homeassistan更新之后…

Python VTK计算曲面的高斯曲率和平均曲率

introduction&#xff1a; Python VTK计算曲面的高斯曲率和平均曲率&#xff0c;如何使用户Python版本的VTK计算曲面的高斯曲率并映射在曲面上。使用了两个不同的表面&#xff0c;每个表面根据其高斯曲率和平均曲率着色. Display: Step: 本文介绍了 如何使用户Python版本的V…

什么是软件开发脚手架?为什么需要脚手架?常用的脚手架有哪些?

什么是软件开发脚手架&#xff1f;为什么需要脚手架&#xff1f;常用的脚手架有哪些&#xff1f; 微服务本身是一种架构风格&#xff0c;也是指导组织构建软件的一系列最佳实践集合。然而&#xff0c;业务团队在拆分应用后&#xff0c;会产生更多细粒度服务&#xff0c;并面临…

基于LINUX实现ping发送与接收

作用 Linux ping 命令用于检测主机&#xff1a;执行 ping 会使用 ICMP 传输协议&#xff0c;发出要求回应的信息&#xff0c;若远端主机的网络功能没有问题&#xff0c;就会回应该信息&#xff0c;因而得知该主机运作正常。 基础使用 #ping 192.168.1.1//ping 主机ip#ping -…

【项目】视频列表滑动,自动播放

自动播放 期望效果&#xff0c;当滑动列表结束后&#xff0c;屏幕中间的视频自动播放HTML页面data变量实践操作&#xff01;重点来了&#xff01;滚动获得的数据实现效果源码&#xff08;粘贴即可运行&#xff09; 期望效果&#xff0c;当滑动列表结束后&#xff0c;屏幕中间的…