简说VS中的.http

  在VS17.5中,加入了一个.http文件,应该和你想的一样,就是一个存放请求的文件,关键是他能执行请求,很像curl。不过市面上相似的工具有很多,比如Postman就做的很好了,那为什么VS还要引入呢?

  我的简单理解,虽然Postman好用,但毕竟和VS中的源码是分离的,即使Postman等工具有导出功能,但在多人协作的场景中,还需要大家必须安装这个工具,导入才能使用,不像.http那样,clone代码,打开vs就可以用,开箱即用。

  下面看简单用法,这一个增删改查的api。

复制代码
using Microsoft.AspNetCore.Http.HttpResults;
using Microsoft.AspNetCore.Mvc;

var builder = WebApplication.CreateBuilder(args);

var app = builder.Build();
var logger = app.Logger;

app.MapGet("item/{id:int}", (int id) => {
    logger.LogInformation("按 ID={0} 查询Item", id);
    return new Item { ID = 1, Name = "PS5", Price = 2000, Describe = "White" };
});

app.MapPost("item", ([FromBody] Item item) => {
    logger.LogInformation("添加Item:{0}", item);
    item.ID = 999;
    return item;
});

app.MapDelete("item/{id:int}", (int id) => {
    logger.LogInformation("按 ID={0} 删除Item", id);
    return TypedResults.Ok("删除成功!");
});

app.MapPut("item", ([FromBody] Item item) => {
    logger.LogInformation("按 ID={0} 修改Item", item.ID);
    item.Describe = "White+Black" ;
    return item;
});

app.Run();

public record Item {
    public int ID { get; set; }
    public string? Name { get; set; }
    public decimal Price { get; set; }
    public string? Describe { get; set; }
}
复制代码

  每个请求用###分割

复制代码
### 查询
GET http://localhost:5144/item/1
### 参数查询
@id=10
GET http://localhost:5144/item/{{id}}
###添加
POST http://localhost:5144/item
Content-Type: application/json

{
  "name": "PS5",
  "price": 2000,
  "describe": "White"
}

###修改改
PUT http://localhost:5144/item
Content-Type: application/json

{
  "id":999,
  "name": "PS5",
  "price": 2000,
  "describe": "White"
}

### 删除
DELETE http://localhost:5144/item/1
复制代码

  下面是请求结算和后台日志:

  Get请求:

   Post请求:

   Put请求:

   Delete请求:

 

  想要更快更方便的了解相关知识,可以关注微信公众号 

posted @   刘靖凯  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下
历史上的今天:
2023-02-15 『 再看.NET7』是否数值类型
2023-02-15 『 再看.NET7』泛性特性使用场景
2017-02-15 数据类型(字面值)
2017-02-15 数据类型表格
2017-02-15 数据类型
点击右上角即可分享
微信分享提示