在webapi中发起HttpGet请求

1.第一步: 在启动文件中加入
builder.Services.AddHttpClient();

2. 第二步: 

using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using System.Net.Http;

namespace WebApplication8._6.Controllers
{
    [Route("api/[controller]/[action]")]
    [ApiController]
    public class ValuesController : ControllerBase
    {
        private readonly IHttpClientFactory _httpClientFactory;
        public ValuesController(IHttpClientFactory httpClientFactory)
        {
            _httpClientFactory = httpClientFactory;
        }
        [HttpGet]
        public string Test()
        {
            return "value1";
        }
     // 下面方法调用Test方法
        [HttpGet]
        public async Task<string> GetTest()
        {
            var httpRequestMessage = new HttpRequestMessage(HttpMethod.Get, "https://localhost:7279/api/Values/Test")
            {
                Headers =
                {
                    //设置请求头
                }
            };
            var httpClient = _httpClientFactory.CreateClient();
            var httpResponseMessage = httpClient.Send(httpRequestMessage);
            if (httpResponseMessage.IsSuccessStatusCode)
            {
                var result = await httpResponseMessage.Content.ReadAsStringAsync();
                return result;
            }
            else
            {
                return "请求失败";
            }
        }
    }
}

 

posted @ 2024-08-06 15:55  龙卷风吹毁停车场  阅读(30)  评论(0)    收藏  举报