C# - 404 蒙山 GitHub API 请求
C# - 404 whith GitHub API request
当我尝试在 GitHub 上获取最新版本的 repo 时,收到 404 响应。使用浏览器并访问例如 url“https://api.github.com/repos/python/cpython/releases/latest/”给我正确的 JSON,但使用 C# 我收到 404 错误。该代码昨天运行完美,但今天在不更改任何内容的情况下再次尝试后,我遇到了错误。
这是代码:
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Add("User-Agent", "request");
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Authorization", "token token123"); //token123 is replaced by my token of course
var contentsUrl = $"https://api.github.com/repos/python/cpython/releases/latest/";
var contentsJson = httpClient.GetStringAsync(contentsUrl);
Console.WriteLine(contentsJson.Result);
主要问题在这里:
new AuthenticationHeaderValue("Authorization", "token token123");
正如您在 docs 中看到的,第一个参数用于 Scheme,例如 Bearer
。
new AuthenticationHeaderValue("Bearer", ACCESS_TOKEN);
如果你的方案是token
,那么你应该使用这样的东西:
new AuthenticationHeaderValue("token", "token123");
当我尝试在 GitHub 上获取最新版本的 repo 时,收到 404 响应。使用浏览器并访问例如 url“https://api.github.com/repos/python/cpython/releases/latest/”给我正确的 JSON,但使用 C# 我收到 404 错误。该代码昨天运行完美,但今天在不更改任何内容的情况下再次尝试后,我遇到了错误。 这是代码:
var httpClient = new HttpClient();
httpClient.DefaultRequestHeaders.Add("User-Agent", "request");
httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Authorization", "token token123"); //token123 is replaced by my token of course
var contentsUrl = $"https://api.github.com/repos/python/cpython/releases/latest/";
var contentsJson = httpClient.GetStringAsync(contentsUrl);
Console.WriteLine(contentsJson.Result);
主要问题在这里:
new AuthenticationHeaderValue("Authorization", "token token123");
正如您在 docs 中看到的,第一个参数用于 Scheme,例如 Bearer
。
new AuthenticationHeaderValue("Bearer", ACCESS_TOKEN);
如果你的方案是token
,那么你应该使用这样的东西:
new AuthenticationHeaderValue("token", "token123");