C#版字节跳动SDK - SKIT.FlurlHttpClient.ByteDance
前言
在我们日常开发工作中对接第三方开放平台,找一款封装完善且全面的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
加入DotNetGuide技术交流群
1、提供.NET开发者分享自己优质文章的群组和获取更多全面的C#/.NET/.NET Core学习资料、视频、文章、书籍,社区组织,工具和常见面试题资源,帮助大家更好地了解和使用 .NET技术。
2、在这个群里,开发者们可以分享自己的项目经验、遇到的问题以及解决方案,倾听他人的意见和建议,共同成长与进步。
3、可以结识更多志同道合的开发者,甚至可能与其他开发者合作完成有趣的项目。通过这个群组,我们希望能够搭建一个积极向上、和谐友善的.NET技术交流平台,为广大.NET开发者带来更多的价值。
C#版字节跳动SDK - SKIT.FlurlHttpClient.ByteDance的更多相关文章
- 字节跳动端智能工程链路 Pitaya 的架构设计
Client AI 是字节跳动产研架构下属的端智能团队,负责端智能 AI 框架和平台的建设,也负责模型和算法的研发,为字节跳动开拓端上智能新场景.本文介绍的 Pitaya 是由字节跳动的 Client ...
- 火山引擎 DataLeap:揭秘字节跳动数据血缘架构演进之路
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 DataLeap 是火山引擎数智平台 VeDI 旗下的大数据研发治理套件产品,帮助用户快速完成数据集成.开发.运维 ...
- 【北京/上海/南京】【部门直推】【可查询】【实习&社招】字节跳动数据平台前端内推
[北京/上海/南京][部门直推][可查询][实习&社招]字节跳动数据平台前端内推 重要信息,写在前面 [投递邮箱]chengxinsong@bytedance.com [微信扫码] 2019 ...
- 从字节跳动离职后,拿到探探、趣头条、爱奇艺、小红书、15家公司的 offer【转】
前言 博主目前从事Android开发3年,前两年一直在抖音工作.我这篇文章并不是简单的描述一些面试中的题,或者总结一些Android的知识,而是想记录我整个的想法和准备的过程,以及一些心得体会,让大家 ...
- 5年Android程序员面试字节跳动两轮后被完虐,请查收给你的面试指南
大家应该看过很多分享面试成功的经验,但根据幸存者偏差的理论,也许多看看别人面试失败在哪里,对自己才更有帮助. 最近跟一个朋友聊天,他准备了几个月,刚刚参加完字节跳动面试,第二面结束后,嗯,挂了- 所以 ...
- 字节跳动实习面经分享(已拿offer附攻略)
大家好,我是bigsai,今天给大家分享自己字节跳动面试经验分享. enum我面得岗位是后台实习开发,具体部门是懂车帝,总体感觉就是字节的流程真的好快,只要安排面试,那流程接着很快. 大概是上上周投递 ...
- 一份热乎的字节跳动客户端面经,已拿Offer
字节面试过程: 4月4号进行内推,7天的简历评估,11号接到电话面试,尽管猝不及防回答仓促,但好在前期准备充分,通过.14号现场面试,次日收到通知,通过,二面.三面都很顺利.20号进行HR面,26号收 ...
- 刷到血赚!字节跳动内部出品:722页Android开发《360°全方面性能调优》学习手册首次外放,附项目实战!
前言 我们平时在使用软件的过程中是不是遇到过这样的情况:"这个 app 怎么还没下载完!"."太卡了吧!"."图片怎么还没加载出来!".&q ...
- 我把阿里、腾讯、字节跳动、美团等Android性能优化实战整合成了一个PDF文档
安卓开发大军浩浩荡荡,经过近十年的发展,Android技术优化日异月新,如今Android 11.0 已经发布,Android系统性能也已经非常流畅,可以在体验上完全媲美iOS. 但是,到了各大厂商手 ...
- 字节跳动五面都过了,结果被刷了,问了hr原因竟说是...
说在前面,面试时最好不要虚报工资.本来字节跳动是很想去的,几轮面试也通过了,最后没offer,自己只想到几个原因:1.虚报工资,比实际高30%:2.有更好的人选,这个可能性不大,我看还在招聘.我是面试 ...
随机推荐
- 《设计模式的运用》使用策略模式+工厂模式优化代码中的if else
使用策略模式优化if else 有这样一段逻辑 function{ for{ if() if() if( if( ) ) ... } } 公司有的祖传的代码,是一段规则校验,校验的越多,每一个请求都会 ...
- Semantic Kernel(语义内核)秋季路线图
Semantic Kernel 是一个开源的 SDK,它允许开发人员将大型语言模型(LLM)与传统的编程语言进行混合使用. 微软Semantic Kernel团队 在博客上正式公布了Semantic ...
- 【阅读笔记】Rapid, Detail-Preserving Image Downscaling
Rapid, Detail-Preserving Image Downscaling(快速的图像缩放技术) 该论文提出了一种基于卷积滤波器的算法,并确定滤波器的权值,使重要的细节保留在缩小比例的图像. ...
- MiniNK WEB 选拔题 by F12
Start 除了梦想外一无所有的我们,将会和蔑视与困境做最后的斗争,这是最后一舞 N0wayBack 联合战队成立以来一直致力于信息安全技术的研究,作为联合战队活跃在各大 CTF (信息安全竞赛)赛事 ...
- 基准测试工具 --- BenchmarkDotNet
介绍 今天介绍一个非常强大的基于.Net 的基准测试工具BenchmarkDotNet. BenchmarkDotNet 已经被14300多个项目采用,包括非常多的知名开源项目,例如 dotnet/p ...
- MarkdownQuote:简化 Markdown 中的代码引用!
MarkdownQuote:简化 Markdown 中的代码引用! 这是 SourceCodeTrace 项目之一,通过在 IDE 中提供一种便捷的方式,快速复制包含代码来源 Markdown 代码块 ...
- 使用wsl 清理windows 下的C盘
大文件删除思路 ## 在wsl 中可以看到,C盘已经挂载了,挂载点为/mnt/c dewan@wsl ~% df /mnt/c Filesystem Size Used Avail Use% Moun ...
- P7167 Fountain
原题 有n个盘子组成的塔,向第i个盘子上倒水,若溢出会落到下面第一个直径大的盘子里,直到落到底部的水池为止.现给出q次询问,\((r,v)\)代表向第r个盘子里倒入体积为v的水,求水最终会停在哪个盘子 ...
- 代码随想录算法训练营第四天|力扣24.两两交换链表节点、力扣19.删除链表的倒数第N个结点、力扣面试02.07链表相交、力扣142.环形链表
两两交换链表中的节点(力扣24.) dummyhead .next = head; cur = dummyhead; while(cur.next!=null&&cur.next.ne ...
- AI绘画StableDiffusion美女实操教程:斗破苍穹-小医仙
之前分享过StableDiffusion的入门到精通教程:AI绘画:Stable Diffusion 终极炼丹宝典:从入门到精通 但是还有人就问:安装是安装好了,可是为什么生成的图片和你生成的图片差距 ...