ASP.NET WebHooks RC 1釋出
正如訊息佇列能夠讓同一個組織內的多個應用相互通訊一樣, WebHooks也為來自不同組織的網站提供了一種以非同步的形式進行通訊的方法。
\\從本質上說,WebHook就是一種回撥機制。使用者可以在WebHook提供者中註冊一個自定義的URL,提供者將在適當的時機通過這個URL將相關的事件以訊息的方式傳送給應用。比方說,使用者可以對Dropbox進行配置,當某個公司的Dropbox帳戶中新增了一個新檔案時,同時向該公司的審計與備份基礎設施發出一條通知。
\\雖然從理論上說,這些功能完全有可能實現,但在現實世界中往往需要考慮到各種其他因素。如果忽視了這些因素,則惡意使用者可利用這種基礎設施發起拒絕攻擊服務,正如pingback曾經出現過的漏洞一樣。
\\為了防止發生這方面的安全問題,WebHooks設計了一個驗證步驟。Dropbox的文件中是這樣寫的:
\\\\\當你輸入WebHooks URI時,就會自動向該URI傳送一個初始的“驗證請求”。驗證過程使用了一個HTTP GET請求,其中帶有一個名為challenge的查詢引數。而你的應用在對該請求的響應中也需要包含這個challenge引數。這個驗證過程請求的目的是確保你的應用確實希望通過該URI獲取通知資訊。即使你無意中輸入了錯誤的URI(或者有人試圖惡意地將你的伺服器設定為他的WebHook),由於你的應用無法正確地響應challenge請求,因此Dropbox仍然不會向該URI傳送任何通知。
\
接收
\\在RC 1版本中,ASP.NET WebHooks包含支援以下提供商的自定義“接收者”:
\\- Azure Alerts與Kudu\\
- BitBucket\\
- Microsoft Dynamics CRM\\
- Dropbox\\
- GitHub\\
- Instagram\\
- MailChimp\\
- PayPal\\
- Pusher\\
- Salesforce\\
- Slack\\
- Stripe\\
- Trello\\
- WordPress\\
- IFTTT與Zapier\
同時,新版本還提供了一個通用的框架庫,可用於建立使用者自定義的接收者。但使用者必須將該接收者託管在公有的網站上,否則提供者將無法連線到這些接收者。
\\提供
\\ASP.NET還提供了一套框架,允許使用者提供自己的WebHooks,讓其他應用程式使用。這套框架包括兩個部分,一是WebHooks基礎設施本身,二是WebHooks註冊資訊的儲存機制。目前可直接使用的儲存機制包括SQL Server和Azure Table Storage。
\\讀者可以在.NET Web Development and Tools部落格上獲取完整的教程與示例。同時可以在GitHub找到專案的原始碼,專案本身遵循Apache 2授權協議。目前的釋出候選版本需要ASP.NET MVC 5和WebAPI 2的支援。
\\檢視英文原文:ASP.NET WebHooks RC 1
相關文章
- .NET Core 和 ASP.NET 5 RC1 釋出ASP.NET
- ASP.NET MVC 3 RC釋出ASP.NETMVC
- .NET 9 RC1 正式釋出,ASP.NET Core 得到完善ASP.NET
- 【翻譯】.NET 5 RC1釋出
- Frugalware Linux 1.9 RC1 釋出Linux
- Kwort Linux 3.5 RC1 釋出Linux
- Spring Mobile 1.1.0.RC1 和 1.0.2 釋出Spring
- .NET 5.0 RC1 釋出,離正式版釋出僅剩兩個版本
- OBS Studio 24.0 RC1 釋出 – 有大驚喜
- 帶有Rust的核心Linux 6.1-rc1釋出RustLinux
- Layotto v0.4.0-rc 釋出
- bbossgroups-2.0-RC釋出
- Ubuntu "Dapper Drake" RC 釋出UbuntuAPP
- .NET 9 RC 2正式釋出
- 解讀釋出:.NET Core RC2 and .NET Core SDK Preview 1View
- iView 釋出 2.0.0-rc.15 版本View
- Python 3.3.3 RC2 釋出 Python
- Julia 0.5.2和0.6-rc1釋出了
- runc 1.0-rc6 釋出之際
- runc 1.0-rc7 釋出之際
- 【開源O/R Mapping框架】OpenORM 0.1RC1版釋出APP框架ORM
- 基於 Laravel 的模組化開發框架 Notadd RC1 fix1 釋出Laravel框架
- .NET 8 RC 2 釋出,將在11月14日釋出正式版
- 網路和閘道器伺服器 ClearOS 6.2 RC1 "Community" 釋出伺服器ROSUnity
- .NET MAUI RC2 釋出,支援 Tizen 平臺UI
- ABP Framework 5.2 RC 釋出及新增功能介紹Framework
- Linux Kernel 4.13 RC6釋出:正式版9月3日釋出Linux
- Rc+RefCell解釋
- JPressv1.0-rc2釋出,新增微信小程式SDK微信小程式
- Redis 6 RC1今天釋出:提供ACL和SSL的最“企業”的Redis版本 -antirezRedis
- asp.net core 6 釋出dockerASP.NETDocker
- .NET 9釋出的最後一個預覽版Preview 7, 下個月釋出RCView
- .NET MAUI 已在塔架就位 ,4月份釋出RCUI
- MySQL 8.0.3 RC 版即將釋出,看看有哪些變化MySql
- Docker 1.6.0 RC4 釋出,Linux 應用容器引擎DockerLinux
- 體驗webhooksWebHook
- .NET MAUI釋出了期待已久的候選版本(RC1)UI
- 蘋果 macOS 12.4 RC 釋出,帶來全新 Studio Display 桌布蘋果Mac