ASP.Net.WebAPI和工具PostMan

1.WebAPI概述

1.1 WebAPI

WebAPI 是一种传统的方式,用于构建和暴露 RESTUI风格的Web服务。它提供了丰富的功能和灵活性,可以处理各种HTTP请求,并支持各种数据格式,如JSON、XML等。

WebAPI使用控制器(Controllers)和动作方法(ActionMethods)的概念、通过路由配置将请求映射到相应的方法上。

开发人员可以使用各种属性和过滤器来处理请求、控制访问权限、验证数据等。

1.2 MinimaIAPI

MinimaIAPI 是ASP.NET COre6引入的一种新的轻量级 API开发模型。

它旨在简化 API的创建过程,提供更简洁、更集中的代码结构。

MinimalAP1基于函数式编程模型,通过一个顶级的webAppiication 类来配置路由和请求处理。开发人员可以使用链式调用的方式定义路由、请求处理逻辑和中间件。这种模型更加直观和易于理解,尤其适合构建小型的、单一用途的 WebAPI。

与WebAPI相比,MinimalAPI的主要区别包括:

1.代码量更少:MinimalAPI基于函数式编程模型,代码更加简洁、消除了控制器和动作方法的概念。
2.更少的依赖项:MinimalAPI不需要使用额外的NuGet包,只需使用ASP.NET Core 本身的核心包即可。
3.更直观的路由配置:MinimaAP1使用链式调用的方式定义路由,路由配置更加直观和易于理解。
4.更轻量级的应用:由于代码量少、依赖项少,MinimalAPI应用程序的启动时间更快,内存占用更小。

2.新建WebAPI

Web API项目模板提供了一个入门版控制器:
[ApiConyroller]
[Route(“[controller]”)]
public class WeatherForecastController : ControllerBase

Web API控制器通常应派生自 ControllerBase 而不是 Controler。Controller派生自ControlerBase,并添加对视图的支持,因此它用于处理 Web页面,而不是WebAPI请求。如果同一控制器必须支持视图和 Web API,则派生自Controller.
在这里插入图片描述
可以勾选https或不勾选
在这里插入图片描述

在这里插入图片描述

在program.cs中自带举例代码如下

using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Mvc;var builder = WebApplication.CreateBuilder(args);// Add services to the container.var app = builder.Build();// Configure the HTTP request pipeline.var summaries = new[]
{"Freezing", "Bracing", "Chilly", "Cool", "Mild", "Warm", "Balmy", "Hot", "Sweltering", "Scorching"
};app.MapGet("/weatherforecast", () =>
{var forecast = Enumerable.Range(1, 5).Select(index =>new WeatherForecast(DateTime.Now.AddDays(index),Random.Shared.Next(-20, 55),summaries[Random.Shared.Next(summaries.Length)])).ToArray();return forecast;
});
app.Run();internal record WeatherForecast(DateTime Date, int TemperatureC, string? Summary)
{public int TemperatureF => 32 + (int)(TemperatureC / 0.5556);
}

运行程序默认打开浏览器显示数据如下
在这里插入图片描述

同样的在上述文件中添加get和post方法如下

app.MapGet("/api/user/login", () =>
{return "hello api";
});app.MapPost("/api/user/loginPost", ([FromForm] string username, [FromForm] string password) =>
{return "hello api" + username + "-" + password;
});

点击运行,使用PostMan软件测试如下:
在这里插入图片描述

工具Postman软件介绍

Postman是一款API测试和开发环境的软件,旨在简化API开发过程、测试和文档编制。以下是关于Postman的详细介绍和使用方法:

一、Postman软件介绍

功能概述:Postman提供了一套功能强大的工具,帮助开发人员更轻松地构建、测试和调试Web服务。它可以发送任何类型的HTTP请求(GET, HEAD, POST, PUT等),附带任何数量的参数和headers。无论是开发人员进行接口调试,还是测试人员做接口测试,Postman都是首选工具之一。
开发者背景:Postman由Abhinav Asthana等人创建,现已成为世界领先的API平台。它简化了API生命周期的每个步骤,并简化了协作,使开发人员能够更快地创建更好的API。
二、Postman使用方法

安装Postman:
访问Postman官方网站(https://www.getpostman.com/),下载最新版本。
根据自己电脑的系统选择对应的版本进行下载。
双击下载的安装包,进入安装界面,按照提示完成安装。个人使用可以选择跳过登录和注册,直接进入主界面。
界面介绍:
顶部菜单:包含文件、编辑、视图和帮助等常用功能。
Home:显示个人主页,包括提醒、工作区等信息。
Workspace:工作区域,可以创建和管理不同的项目。
Explorer:查看关于Postman的公共API、团队、工作区和集合。
其他功能:如搜索、邀请成员、设置、通知、账户管理和升级等。
发送请求:
点击界面左上角的“+”号,打开一个新的请求页。
在请求的URL中输入要发送请求的URL地址。
选择请求方法(GET、POST等),并填写必要的请求参数和headers。
点击“Send”按钮发送请求,查看响应结果。
集合与环境:
集合(Collections):一组API的集合,相当于是一个综合的板块。可以在集合下创建包和各种请求。
环境(Environments):管理API执行环境的地方,有全局变量和环境变量应对一些请求不断变化。可以创建不同的环境(如开发环境、测试环境等),并在不同环境中切换。
响应结果比较与测试用例:
Postman提供响应结果的比较功能,可以用来写测试用例。可以保存请求和响应结果作为测试用例,并在后续测试中比较实际响应与预期响应是否一致。
其他高级功能:
Mock Servers:设置Mock服务器的地方,主要用于联调测试,不拖慢测试的进度。
Monitors:定期运行集合以检查其性能和响应情况。
Flows:通过拖放UI连接一系列请求从而创建API工作流。
总之,Postman是一款功能强大的API测试和开发环境软件,通过简单直观的界面和丰富的功能支持开发人员更高效地构建、测试和调试Web服务。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣每日一题 6/30 记忆化搜索/动态规划

博客主页:誓则盟约系列专栏:IT竞赛 专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ 494.目标和【中等】 题目: 给你一个非负整数数组 nums 和一个…

INS-GPS组合导航——卡尔曼滤波

系列文章目录 《SAR笔记-卫星轨道建模》 《SAR笔记-卫星轨迹(三维建模)》 《常用坐标系》 文章目录 前言 一、经典卡尔曼滤波 二、扩展卡尔曼滤波 三、无迹卡尔曼滤波 总结 前言 SAR成像仪器搭载于运动平台,平台的自定位误差将影响SAR…

Redis缓存问题二、缓存雪崩

缓存雪崩 缓存雪崩:是指在同一时段大量的缓存key同时失效或者Redis服务宕机,导致大量请求到达数据库,带来巨大压力。 缓存雪崩的解决方案: 给不同的Key的TTL添加随机值利用Redis集群提高服务的可用性给缓存业务添加降级限流策略…

数据库物理结构设计-定义数据库模式结构(概念模式、用户外模式、内模式)、定义数据库、物理结构设计策略

一、引言 如何基于具体的DBMS产品,为数据库逻辑结构设计的结果,即关系数据库模式,制定适合应用要求的物理结构 1、在设计数据库物理结构前,数据库设计人员首先 要充分了解所用的DBMS产品的功能、性能和特点,包括提供…

DarkGPT:基于GPT-4-200k设计的人工智能OSINT助手

关于DarkGPT DarkGPT是一款功能强大的人工智能安全助手,该工具基于GPT-4-200k设计并实现其功能,可以帮助广大研究人员针对泄露数据库进行安全分析和数据查询相关的OSINT操作。 工具要求 openai1.13.3 requests python-dotenv pydantic1.10.12 工具安装 …

word2016中新建页面显示出来的页面没有页眉页脚,只显示正文部分。解决办法

问题描述:word2016中新建页面显示出来的页面没有页眉页脚,只显示正文部分。设置了页边距也不管用。 如图1 图1 解决: 点击“视图”——“多页”——“单页”,即可。如图2操作 图2 结果展示:如图3 图3

操作系统精选题(三)(简答题、概念题)

🌈 个人主页:十二月的猫-CSDN博客 🔥 系列专栏: 🏀操作系统 💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光 目录 前言 简答题 一、对 CPU、内存、外设并…

红黑树插入删除流程(流程图)

红黑树插入删除流程(流程图) 红黑树性质 左根右(二叉树)根叶黑(根节点是黑色的)不红红(不存在相邻两个红色节点)黑路同(对于每个节点,从该节点出发到任一空叶节点所经过…

==和equals的区别(面试题)

和equals有什么区别 对于基本数据类型,比较的是值是否相等,对于引用类型则是比较的地址是否相等;对于equals来说,基本数据类型没有equals方法,对于引用类型equals比较的是引用对象是否相同 那针对以上结论&#xff0c…

基于模糊神经网络的时间序列预测(以hopkinsirandeath数据集为例,MATLAB)

模糊神经网络从提出发展到今天,主要有三种形式:算术神经网络、逻辑模糊神经网络和混合模糊神经网络。算术神经网络是最基本的,它主要是对输入量进行模糊化,且网络结构中的权重也是模糊权重;逻辑模糊神经网络的主要特点是模糊权值可…

Web后端开发概述环境搭建项目创建servlet生命周期

Web开发概述 web开发指的就是网页向后再让发送请求,与后端程序进行交互 web后端(javaEE)程序需要运行在服务器中 这样前端才可以对其进行进行访问 什么是服务器? 解释1: 服务器就是一款软件,可以向其发送请求,服务器会做出一个响应.可以在服务器中部署文件,让…

pytest-作用域

固件的作用是为了抽离出重复的工作和方便复用,为了更精细化控制固件(比如只想对数据库访问测试脚本使用自动连接关闭的固件),pytest 使用作用域来进行指定固件的使用范围。 在定义固件时,通过 scope 参数声明作用域&a…

专业指南:U盘数据恢复全攻略

一、引言:U盘数据恢复的重要性 在信息化日益发展的今天,U盘已成为我们日常生活中不可或缺的存储设备。然而,由于各种原因,U盘中的数据可能会面临丢失的风险。U盘数据恢复技术便应运而生,它旨在帮助用户找回因误删除、…

Unity制作一个简单抽卡系统(简单好抄)

业务流程:点击抽卡——>播放动画——>显示抽卡面板——>将随机结果添加到面板中——>关闭面板 1.准备素材并导入Unity中(包含2个抽卡动画,抽卡结果的图片,一个背景图片,一个你的展示图片) 2.给…

【前端】简易化看板

【前端】简易化看板 项目简介 看板分为三个模块,分别是待办,正在做,已做完三个部分。每个事件采取"卡片"式设计,支持任务间拖拽,删除等操作。 代码 import React, { useState } from react; import { Car…

通用管理页面的功能实现

在Windows Forms(WinForms)应用程序中,创建一个通用的管理页面通常涉及对数据的增删改查(CRUD)操作,以及一些额外的功能,如数据过滤、排序、导出和导入等。 先看一个仓库管理页面要素。 仓库管…

Redis-主从复制-测试主从模式下的读写操作

文章目录 1、在主机6379写入数据2、在从机6380上写数据报错3、从机只能读数据,不能写数据 1、在主机6379写入数据 127.0.0.1:6379> keys * (empty array) 127.0.0.1:6379> set uname jim OK 127.0.0.1:6379> get uname "jim" 127.0.0.1:6379>…

windows@文件高级共享设置@网络发现功能@从资源管理器网络中访问远程桌面

文章目录 高级共享设置常用选项其他选项操作界面说明 网络类型检查和设置(专用网络和公用网络)👺Note 高级共享设置和防火墙👺命令行方式使用图形界面方式配置 网络发现网络发现功能的详细介绍网络发现的作用👺网络发现的工作原理启用和配置网…

无水印视频素材库有哪些?高清无水印素材网站分享!

在这个数字化时代,短视频创作已成为流行趋势。为了让您的视频内容更具吸引力,选择合适的无水印高清视频素材至关重要。今天,我将向您推荐几个优秀的视频素材库,这些资源网站将大大提高您的创作效率和视频质感。 蛙学素材网&#…

WP黑格导航主题BlackCandy

BlackCandy-V2.0全新升级!首推专题区(推荐分类)更多自定义颜色!选择自己喜欢的色系,焕然一新的UI设计,更加扁平和现代化! WP黑格导航主题BlackCandy