gpt4 book ai didi

c# - HttpClient 返回服务器违反协议(protocol) - 浏览器返回正确的数据

转载 作者:太空狗 更新时间:2023-10-29 21:53:57 25 4
gpt4 key购买 nike

我正在尝试通过重新启动成员资格来设置 github。

如果我尝试从浏览器调用 github api

https://api.github.com/user?access_token=XXXXXXX

我可以看到所有有效的 json 数据,但是如果我从 .net 尝试

  public ActionResult Index()
{
var url = "https://api.github.com/user?access_token=XXXXXXXX";
////add additional params
//if (additionalParams != null)
//{
// foreach (string key in additionalParams)
// {
// url += string.Format("&{0}={1}", key, additionalParams[key]);
// }
//}

HttpClient client = new HttpClient();
var result = client.GetAsync(url).Result;
if (result.IsSuccessStatusCode)
{
var json = result.Content.ReadAsStringAsync().Result;
var profile = Newtonsoft.Json.JsonConvert.DeserializeObject<Dictionary<string, object>>(json);
//return GetClaimsFromProfile(profile);
}
return View();
}

我得到一个错误

The server committed a protocol violation. Section=ResponseStatusLine

HttpClient 不喜欢我正在尝试的东西有什么?我是否需要提供浏览器正在为我做的额外详细信息?

如有任何帮助,我们将不胜感激!

最佳答案

添加

<system.net>
<settings>
<httpWebRequest useUnsafeHeaderParsing="true" />
</settings>
</system.net>

我的 web.config 似乎解决了这个问题......我真的不明白为什么我需要添加这个但它有效。

关于c# - HttpClient 返回服务器违反协议(protocol) - 浏览器返回正确的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26372844/

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