使用 HttpClient 的 HTTPS GET 调用

HTTPS GET call using HttpClient

我收到一个 400 错误请求,试图使用 HttpClient 调用 API,但我不确定我错过了什么。

我已经从我的浏览器和 Postman 尝试了端点并且没有遇到任何问题,但是当我尝试使用以下代码时我收到了 400 错误请求:

using (HttpClient client = new HttpClient())
{
    var result = client.GetAsync("https://api.exchange.coinbase.com/products/ETH-USD/candles?granularity=300&start=2022-03-22&end=2022-03-23").Result;
}

谁能告诉我我缺少什么才能让它工作?

来自原代码的请求returns{"message":"User-Agent header is required."}。如果是的话,加user-agentheader修复问题

using System;
using System.Net.Http;
using System.Net.Http.Headers;

using (HttpClient client = new HttpClient())
{   
    client.DefaultRequestHeaders.UserAgent.Add(new ProductInfoHeaderValue(".NET", "6.0"));
    var result = await client.GetAsync("https://api.exchange.coinbase.com/products/ETH-USD/candles?granularity=300&start=2022-03-22&end=2022-03-23");   
    Console.WriteLine(await result.Content.ReadAsStringAsync());
}