铁人赛完赛整理&开源

第12 届iT邦帮忙铁人赛系列文章 (Day30)

终於走到这一天了,每次都觉得铁人赛过程都生不如死,但写完30天候总有一种成就感,技术跟文章不难,难的是30天养成一个固定的习惯阿!

回到第一天文章所讲的:所用到的技术预计采用 .NET Core 3.1、Html/CSS/JavaScript、Line API 、Azure的一些服务…等等 (但写这篇文章时完全还没实作XD…只能说待订)

这次写完30天也收获良多,主要也是挑一些之前比较少碰的东西顺便玩玩看

  • 把 Line 的 Api 文件又完整K了一遍,并一个一个写成 .NET Core 的版本, 之前比较没碰过的是 Line Pay/Line Beacon

  • 写得过程中看到 vue 海贼王版本推出 (vue 3.0),起了专案实践了一些功能,来看看它的架构

  • 用了 Razor Page,让我回到 ASP.NET WebForm 的复古感

  • 玩了一些 Azure 服务,Azure StorageQnA Maker,其中 Azure SignalR Service 是之前比较没玩过的

  • 把之前自己婚礼用的 chatbot 改一版,顺便要给接下来结婚的朋友用 XD 真实的把所做的Side Project给用上

  • 边看文件边写SDK出来,并开源出来

本篇就来讲讲最後一哩路,怎麽发布到 NuGet 上吧!

我将这次系列边走边看得的程序稍作整理,建立一个 .NET Core 的函示库专案

在 VS 按右键套件

或者可以使用CLI : dotnet pack

编辑套件的资讯

release 编译後,可以看到 bin\release 有 nupkg 档案

接着到 nuget.org 注册一个帐号,并新增 Api Key

点选 Copy ,

在 bin\release 执行

dotnet nuget push NetCoreLineBotSDK.0.1.3.nupkg --api-key <Nuget API Key> --source [https://api.nuget.org/v3/index.json](https://api.nuget.org/v3/index.json)

等一段时间,就能看到 NuGet 的连结啦~
https://www.nuget.org/packages/NetCoreLineBotSDK/

开始第一个 Line Chatbot

这篇再来快速做一次一个Line Chatbot Hello World

安装套件

Install-Package NetCoreLineBotSDK

Startup.cs 新增 AddLineBotSDK

public void ConfigureServices(IServiceCollection services)

{

services.AddControllers();

services.AddLineBotSDK(Configuration);

}

appsettings.json 增加token,这些怎麽拿? 看这篇

"LineSetting": {

"ChannelSecret": "<Your Line Channel Secret>",

"ChannelAccessToken": "<Your Line Channel Access Token>"

}

新增一个 Web Api

继承 LineBotApp,针对不同事件 override 处理

这篇文章用 ngrok Run 起来,URL设定於 Line Develop 後台,这样就完成啦

本次 Nuget 连结:https://www.nuget.org/packages/NetCoreLineBotSDK/
Github 连结:https://github.com/kyleap/NetCoreLineBotSDK

版本先定为 v0.1.0 QQ 因为还不够成熟,一方面还没有实作完所有功能,基本的例外处理与参数的验证都还没加上,但铁人赛这只是的开始,主要也是希望用自己的SDK来应对之後的开发,再来也会继续拨空往 v1.0.0 推进~

本系列文章索引在第一篇:用.NET Core与Line Bot制作婚礼机器人

懒人包,本次学到了什麽?


<<:  Day 30 ~ AI从入门到放弃 - 结语

>>:  python30天-DAY30

程序语言篇

学资安需要会写程序吗? 最近才看到PTT有人问了类似的问题, 大致上的内容就是询问说想走资安,但不会...

使用 Effect Hook( Day17 )

上一篇介绍过 State Hook 用来储存状态,Effect Hook 则用来处理 functio...

Day 14 Compose GridLayout

今年的疫情蛮严重的,希望大家都过得安好,希望疫情快点过去,能回到一些线下技术聚会的时光~ 今天目标:...

Day 30 :BST中找最接近的值&感谢文

简单叙述一下题目:题目会给你一棵BST以及一个数。我们要从这个BST中找出最接近这个数的节点值。 以...

[DAY 10] Pytorch 简介

前言 在开始进入我们各式各样的深度模型之前,我们要先来介绍一个非常 Powerful 的 Deep ...