2016-01-31 29 views
5

Tôi đã được sau hàng loạt ấn tượng Henrik F Nielsen 's bài đăng trên blog trên công nghệ ASP.NET WebHooks mới. The latest post which can be found here, nếu quan tâm.Sự khác biệt giữa ASP.NET WebHooks và dịch vụ web?

In another, earlier one of these posts, tôi hỏi trong một chú thích những gì khác biệt là giữa WebHooks và SignalR. Câu trả lời sau đó được đăng lên một liên kết đến số great question (and answer) here on StackOverflow.

Tuy nhiên, bây giờ sau khi đọc câu trả lời cho câu hỏi đó, tôi phải hỏi: Sự khác biệt giữa việc sử dụng ASP.NET WebHooks và sử dụng dịch vụ web ol thường xuyên là gì? Câu trả lời được chấp nhận được đưa ra trong số SignalR comparison answer gợi ý "Hãy suy nghĩ về truyền thông B2B". Tuy nhiên, khi tôi nghĩ rằng giao tiếp B2B, tôi ngay lập tức nghĩ về các dịch vụ web - SOAP hoặc REST (mà - như tôi đã hiểu đến thời điểm này - sử dụng các động từ HTTP giống như WebHooks).

Tôi đã quan tâm đến việc học WebHook, và đã theo dõi những bài viết này, nhưng sự nhầm lẫn vẫn còn về cách tất cả điều này phù hợp với nhau, đặc biệt là khi có vẻ như các công nghệ khác về cơ bản cũng làm như vậy. Nó sẽ là tuyệt vời để có được làm rõ giữa hai công nghệ.

Trả lời

5

Nó chỉ là một lớp trên đầu trang của rằng "đồng bằng cũ MVC" chồng mà những giao dịch "tự động" với các dịch vụ SaaS cụ thể.

Once Upon a Time - Webhooks được mã hóa bằng tay

Hãy suy nghĩ về mã hóa một người biết lắng nghe cho một webhook Dropbox. Bạn phải mã hóa tất cả các tham số và xác thực từ đầu, bạn phải biết oauth2.0 (và tìm ra cách kích hoạt nó), và bạn cần tìm ra móc nào có sẵn.

Webhooks trong asp.net cho phép những người đã mã hóa Dropbox CSONG mã tham số và mã khung cho webhook của bạn. Vì vậy, nó dễ dàng hơn để có được nó một cách nhanh chóng. Rõ ràng, nếu bạn đang xuất bản webhook của riêng mình, thì họ đang cung cấp hệ thống ống nước để bạn có thể tạo "người quan sát" trong mã của bạn và họ cung cấp cách tự động để những người khác đăng ký những người nghe đó. Một lần nữa, bạn có thể tự viết mã đó, nhưng các tiêu chuẩn sau đây là một cách dễ dàng để đảm bảo rằng những người khác không có một đường cong học tập dốc khi đến lúc tiêu thụ móc của bạn.

Think "NuGet cho các dịch vụ web"

suy nghĩ về cách NuGet thay đổi về cơ bản quá trình này để thêm tham chiếu đến mã của bạn. Bạn chỉ cần thêm các gói giải pháp của bạn, và hệ thống chăm sóc tải, thay đổi web.config vv

Dịch vụ này làm điều tương tự cho các dịch vụ SaaS web. Bây giờ, với tư cách là nhà cung cấp dịch vụ saas, chúng tôi có thể viết mã một gói giống như một gói nhỏ để tải xuống/cài đặt trình lắng nghe. Không có bài viết kb nào giải thích cách oauth1 vs oauth2 vs api-keys hoạt động như thế nào. Chúng tôi chỉ tạo một trình hướng dẫn cài đặt nhỏ và tắt đi!

Tuy nhiên, khi chúng tôi lần đầu tiên bắt đầu với nuget, có một nhóm nhỏ các lập trình viên hỏi "sự khác biệt giữa nuget và chỉ thêm tham chiếu vào mã của bạn theo cách thủ công."

vs SignalR

SignalR là một live "hoạt động" kết nối đến máy chủ của bạn. Nó tạo ra dịch vụ giống như trò chuyện của riêng bạn. Webhooks (khái niệm chung) chỉ là một cuộc gọi http đến một trong những điểm kết thúc của bạn.Điều đó, tôi nghĩ, là điểm của câu trả lời cho bài đăng xếp chồng khác của bạn.

Webhook khái niệm vs MSFT "WebHook"

MSFT đang là https gửi thêm một bước nữa và nói rằng Dropbox (hoặc bất kỳ nhà cung cấp webhook) có thể tạo ra một thuật sĩ cho khác để sử dụng các bước họ thông qua xác thực , các tham số truy vấn, vv đó là một ý tưởng hay vì bạn sẽ không cần phải đọc tài liệu Dropbox để tiêu thụ một webhook Dropbox.

+0

"Think 'nuget for web services'" giành được interwebs ngày này. Cảm ơn bạn vì câu trả lời tuyệt vời của bạn, @bri! –

+0

Một câu hỏi khác - Webhooks sẽ làm việc với các webhook khác không phải là phần mềm? Ví dụ tôi đang xem xét triển khai Webhooks để hỗ trợ tích hợp Zapier ... nhưng các tài liệu dường như đề xuất điều này là dành cho các nhà cung cấp khác đã triển khai "người nhận" bằng cách sử dụng cùng tiện ích này. Hay cái này chung chung hơn? –

+0

Dropbox không phải là .net và đó là một trong các móc có sẵn trong hộp. Zapier sẽ cần phải tạo webhook "gói" ... Trừ khi bạn mã và xuất bản nó ;-). – bri

Các vấn đề liên quan