这是一个现代 C# 示例解决方案,用于使用控制台应用程序内的 API KEY 访问 Blogger v3 API。
创建一个新的 .NET Framework 控制台应用项目。
安装以下 NuGet 包:https ://www.nuget.org/packages/Google.Apis.Blogger.v3/
用以下代码替换您的 Main 代码:
static void Main(string[] args)
{
Console.WriteLine("Blogger API Sample");
Console.WriteLine("==================");
CancellationTokenSource cts = new CancellationTokenSource();
System.Console.CancelKeyPress += (s, e) =>
{
e.Cancel = true;
cts.Cancel();
};
try
{
MainAsync(args, cts.Token).Wait();
}
catch (AggregateException ex)
{
foreach (var e in ex.InnerExceptions)
{
Console.WriteLine("EXCEPTION: " + e.Message);
}
}
Console.WriteLine("Press any key to continue...");
Console.ReadKey();
}
static async Task MainAsync(string[] args, CancellationToken ct)
{
if (args == null || args.Length != 1) args = new string[] { "http://blogger.googleblog.com/" };
// Create the service.
BloggerService service = new BloggerService(new BaseClientService.Initializer
{
ApplicationName = "Your Blogger App Name Here",
ApiKey = "[YOUR_API_KEY_HERE]",
});
// Run the blog request.
Console.WriteLine($"Executing blog {url} request...");
var blogResult = await service.Blogs.GetByUrl(url).ExecuteAsync(ct);
// Display the results.
if (blogResult.Posts != null)
{
//Run the posts request
Console.WriteLine($"Executing posts {blogResult.Posts.SelfLink} request...");
var postsResult = await service.Posts.List(blogResult.Id).ExecuteAsync(ct);
foreach (var post in postsResult.Items)
{
Console.WriteLine($"{post.Id} - {post.Title}");
}
}
}