前言
在我们日常开发工作中对接第三方开放平台,找一款封装完善且全面的SDK能够大大的简化我们的开发难度和提高工作效率。今天给大家推荐一款C#开源、功能完善的字节跳动SDK:SKIT.FlurlHttpClient.ByteDance。
项目官方介绍
可能是全网唯一的 C# 版字节跳动 SDK,封装全部已知的字节跳动 API,包含字节小程序开放平台、抖音开放平台、抖店开放平台、巨量引擎开放平台、TikTok Developer、TikTok Shop Open Platform 等模块,可跨平台,持续随官方更新。
项目特性
-
基于 Flurl.Http,可与 IHttpClientFactory 集成。
-
支持 .NET Framework 4.6.1+、.NET Standard 2.0+、.NET Core 2.0+、.NET 5+。
-
支持 Windows / Linux / macOS 多平台部署。
-
支持 System.Text.Json(默认)和 Newtonsoft.Json 两种序列化方式。
-
强类型接口模型。
-
全异步式编程。
-
提供 SourceLink 调试符号文件。
-
完整、完善、完全的字节跳动 HTTP API 封装。
项目模块
字节小程序开放平台(小程序、小游戏)、抖音开放平台、巨量引擎开放平台(头条广告)、TikTok Developer、TikTok Shop Open Platform等。
项目源码
抖音开放平台快速开始
模块功能描述
-
基于抖音开放平台 API 封装。
-
提供了抖音开放平台 API 所需的 AES、MD5、SHA-1、SHA-256、HMAC-SHA-256 等算法工具类。
-
提供了生成授权链接、生成 JSBridge 签名、解析回调通知事件、解密手机号码等扩展方法。
快速入门
安装:
提示:如果你使用 Visual Studio NuGet 管理器图形化界面,请在搜索结果中勾选"包括预发行版"。
# 通过 NuGet 安装
> Install-Package SKIT.FlurlHttpClient.ByteDance.DouyinOpen
或
# 通过 dotnet-tools 安装
> dotnet add package SKIT.FlurlHttpClient.ByteDance.DouyinOpen
初始化:
using SKIT.FlurlHttpClient.ByteDance.DouyinOpen;
var options = new DouyinOpenClientOptions()
{
ClientKey = "抖音开放平台应用Key",
ClientSecret = "抖音开放平台应用密钥"
};
var client = new DouyinOpenClient(options);
请求 & 响应:
using SKIT.FlurlHttpClient.ByteDance.DouyinOpen;
using SKIT.FlurlHttpClient.ByteDance.DouyinOpen.Models;
/* 以获取用户信息接口为例 */
var request = new OAuthUserInfoRequest()
{
AccessToken = "抖音开放平台的AccessToken",
OpenId = "用户唯一标识"
};
var response = await client.ExecuteOAuthUserInfoAsync(request);
if (response.IsSuccessful())
{
Console.WriteLine("昵称:" + response.Data.Nickname);
Console.WriteLine("头像:" + response.Data.AvatarUrl);
}
else
{
Console.WriteLine("错误代码:" + response.Extra?.ErrorCode);
Console.WriteLine("错误描述:" + response.Extra?.ErrorDescription);
}
项目源码地址
更多项目实用功能和特性欢迎前往项目开源地址查看👀,别忘了给项目一个Star支持💖。
https://github.com/fudiwei/DotNetCore.SKIT.FlurlHttpClient.ByteDance
优秀项目和框架精选
该项目已收录到C#/.NET/.NET Core优秀项目和框架精选中,关注优秀项目和框架精选能让你及时了解C#、.NET和.NET Core领域的最新动态和最佳实践,提高开发工作效率和质量。坑已挖,欢迎大家踊跃提交PR推荐或自荐(让优秀的项目和框架不被埋没🤞
)。
https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.md