Visual Studio 2022のバージョン17.5から、VSCodeの拡張機能REST Clientと同じようなHTTPリクエストを実行できる機能が追加されたそうなので試してみました。 marketplace.visualstudio.com
実行環境
- Visual Studio 2022 17.5
WebAPIを準備する
MinimalAPIで適当なエンドポイントを作成しました。
var builder = WebApplication.CreateBuilder(args); var app = builder.Build(); 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 ( DateOnly.FromDateTime(DateTime.Now.AddDays(index)), Random.Shared.Next(-20, 55), summaries[Random.Shared.Next(summaries.Length)] )) .ToArray(); return forecast; }); app.MapPost("/weatherforecast", (WeatherForecast forecast) => { return forecast; }); app.Run(); internal record WeatherForecast(DateOnly Date, int TemperatureC, string? Summary) { publicint TemperatureF =>32+ (int)(TemperatureC /0.5556); }
httpファイルを追加する
ソリューションエクスプローラーから新しい項目を追加でhttpファイルを追加します。
リクエストを書いてみる
追加したhttpファイルの中身を書いてみます。
GET https://localhost:7039/weatherforecast
GETだけだと味気ないのでJSONを投げるPOSTも書いてみます。
POST https://localhost:7039/weatherforecast Content-Type: application/json { "date":"2023-03-01", "temperatureC":53, "summary":"Cool", "temperatureF":127 }
実行する
httpファイルの右側に出てくるボタンを押すとリクエストを投げます。
POSTもやってみます。
ちゃんとレスポンスが返ってきました。
APIのテストコードとして使ったり、APIをちょっと叩くのに便利そうな感じがしました。 今までほぼ同じことをVSCodeの拡張機能であるRestClientを使ってやっていましたが、本家Visual Studioで同じことができるようになったのは嬉しいですね。