gpt4 book ai didi

c# - UWP - while 循环中的 HttpClient 仅执行一次 GET 并返回与第一个执行值相同的字符串

转载 作者:可可西里 更新时间:2023-11-01 17:28:09 28 4
gpt4 key购买 nike

我想重复调用 GET 方法来获取随机字符串,如

while (!isFinished)
{
using (var client = new HttpClient())
{
string result = await client.GetStringAsync(new Uri("the consistent url"));
//I tried this as well
//var res = await client.GetAsync(new Uri("the consistent url"));
//string outp = await res.Content.ReadAsStringAsync();
Console.WriteLine(result);
}
}

它应该返回不同的字符串(我敢肯定)但返回值始终与第一次执行时相同。然后我用 Fiddler 查看我的网络流量,我发现只有一个 GET 方法被调用并且程序仍在循环中并返回相同的值。我不知道为什么。

相比之下,我尝试通过POST方法调用另一个API,效果很好。那有什么问题呢?

最佳答案

您可以使用 IHttpFilter 创建 HttpClient 以设置缓存使用:

HttpBaseProtocolFilter filter = new HttpBaseProtocolFilter();
// Setting it to .NoCache always forces a new request
filter.CacheControl.ReadBehavior = HttpCacheReadBehavior.NoCache;
filter.CacheControl.WriteBehavior = HttpCacheWriteBehavior.Default;

HttpClient client = new HttpClient(filter);
// .. your request code

关于c# - UWP - while 循环中的 HttpClient 仅执行一次 GET 并返回与第一个执行值相同的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42512901/

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