在实际开发中,我们经常会使用第三方工具调用后台接口,比如postman,apifox,但除了这些工具,你还知道哪些方式可以吗?
以下是几种调用方式的简单例子:
测试接口代码如下:- using Microsoft.AspNetCore.Mvc;
- using Microsoft.Extensions.Options;
- using Spring.Objects.Factory.Attributes;
- using Newtonsoft.Json;
- using ChenShiBao.AspNetCore7._0.Model.Tests;
- namespace ChenShiBao.AspNetCore7._0.Controllers
- {
- /// <summary>
- /// 测试
- /// </summary>
- [ApiController]
- [Route("Api/[controller]/[action]")]
- public class TestController : ControllerBase
- {
- [HttpPost]
- public async Task<List<TestModelDto>> GetTestModels([FromBody] TestModelInput input)
- {
- var result = new List<TestModelDto>();
- result.Add(new TestModelDto { Id = 1, Name = "张三" });
- result.Add(new TestModelDto { Id = 3, Name = "王五" });
- return await Task.FromResult(result);
- }
- }
- }
复制代码 可以分别使用以下方式调用接口:
1.PowerShell 正确的 Invoke-WebRequest 方法
在 PowerShell 里,你应该用 -Headers @{} 代替 -H,并确保 -Body 使用 JSON:
下令格式:- Invoke-WebRequest -Uri "http://localhost:9000/Api/Test/GetTestModels" `
- -Method Post `
- -Headers @{ "Content-Type" = "application/json" } `
- -Body ('{"Name":"Test","Id":25}') `
- -UseBasicParsing
复制代码 输出结果:
- 注意
- -Headers @{} 需要用哈希表 (@{}) 而不是字符串。
- -Body 需要是字符串格式,建议加 () 确保 PowerShell 解析正确。
- -UseBasicParsing 避免一些 PowerShell 版本的问题。
2.使用 curl,在 CMD 里运行
下令格式:- curl -X POST "http://localhost:9000/Api/Test/GetTestModels" ^
- -H "Content-Type: application/json" ^
- -d "{"Name":"Test","Id":25}"
复制代码 输出结果:
3.使用 curl,在 gitBash 里运行
下令格式:- curl -X POST "http://localhost:9000/Api/Test/GetTestModels" \
- -H "Content-Type: application/json" \
- -d '{"Name":"Test","Id":25}'
复制代码 输出结果:
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
|