我正在尝试制作一个小型应用程序以将GitHub API的结果转换为文本文件。首先,我试图将数据获取到控制台。我尝试了许多方法以及许多文档的引用,但是我找不到方法解决此问题。
https://api.github.com/users/user?client_id=8763c42f48201b31115f&client_secret=4708b9aea8e35878b9748a016198b81de24352a4 要求被行政法规禁止。请确保您的请求具有User-Agent标头(http://developer.github.com/v3/#user-agent-required)。检查https://developer.github.com是否有其他可能的原因
这是我使用的示例代码。有谁能帮助我解决有关User-Agent header
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp2
{
class Program
{
static void Main(string[] args)
{
GetGameData().Wait();
}
public static async Task<string> GetGameData()
{
var url = "https://api.github.com/users/user?client_id=8763c42f48201b31115f&client_secret=4708b9aea8e35878b9748a016198b81de24352a4";
using (HttpClient client = new HttpClient())
{
client.BaseAddress = new Uri(url);
Console.WriteLine(client.BaseAddress);
HttpResponseMessage response = await client.GetAsync(url);
string strResult = await response.Content.ReadAsStringAsync();
Console.WriteLine(strResult);
return strResult;
}
}
}
}
答案 0 :(得分:0)
对于使用HttpClient而言,Jimi的评论对我有用:
client.DefaultRequestHeaders.Add("User-Agent", @"Mozilla/5.0 (Windows NT 10; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0");
此问题的示例使用HttpClient,但如果要使用WebClient,请参见以下问题:Setting the User-Agent header for a WebClient request