gpt4 book ai didi

C# 网络 API 调用

转载 作者:太空宇宙 更新时间:2023-11-03 21:24:25 25 4
gpt4 key购买 nike

这是我第一次尝试调用 API,我有点吃力。我不断收到错误消息,我计划使用 json 响应来填充我的对象。 OMDB api 说明在这里(虽然没有帮助):http://www.omdbapi.com/

private static async Task RunAsync()
{
using (var client = new HttpClient())
{
client.BaseAddress = new Uri("http://www.omdbapi.com/?");
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

HttpResponseMessage response = client.GetAsync("t=Captain+Phillips&r=json").Result;

if (response.IsSuccessStatusCode)
{
Console.WriteLine("Success");
}
else
{
Console.WriteLine("Error with feed");
}
}
}

最佳答案

您将问号 (?) 放在了错误的位置。像这样尝试:

private static async Task RunAsync()
{
using (var client = new HttpClient())
{
client.BaseAddress = new Uri("http://www.omdbapi.com");
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

HttpResponseMessage response = await client.GetAsync("?t=Captain+Phillips&r=json");

if (response.IsSuccessStatusCode)
{
Console.WriteLine("Success");
}
else
{
Console.WriteLine("Error with feed");
}
}
}

注意这里是问号:

HttpResponseMessage response = await client.GetAsync("?t=Captain+Phillips&r=json");

而不是在你放置它的基础 url 上。

此外,为了正确编写您的异步方法,您需要在其内部 await 而不是急切地调用 .Result 属性,这当然是一个阻塞操作。

关于C# 网络 API 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28137025/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com