Dịch vụ web: Giao dịch thực sự



Dịch vụ web có thể được truy cập bởi bất kỳ ứng dụng nào được xây dựng bằng bất kỳ ngôn ngữ nào. Nó giải quyết các vấn đề giao tiếp giữa các ứng dụng khác nhau.

Bạn đã bao giờ nghĩ đến việc giúp đỡ ai đó và không tìm ra cách để làm điều đó? Có, tôi biết các nhà phát triển phần mềm không có thời gian để làm tất cả những việc này. Trên thực tế, một phần cuộc đời của chúng ta dành cho việc viết mã cho ứng dụng này hay ứng dụng khác. Vì vậy, tất cả những điều này khiến tôi luôn suy nghĩ, với tư cách là một nhà phát triển, tôi có thể làm bất cứ điều gì tốt cho các nhà phát triển đồng nghiệp của mình.





Tại sao không viết một mã có thể được sử dụng bởi bất kỳ nhà phát triển mã hóa bằng bất kỳ ngôn ngữ nào? Điều đó sẽ không tuyệt vời phải không?
Đúng! Và đoán xem ? Giải pháp là - “Dịch vụ Web”

Dịch vụ web theo định nghĩa của W3C là “một hệ thống phần mềm được thiết kế để hỗ trợ tương tác giữa máy và máy có thể tương tác qua mạng”.



Các dịch vụ web được phát triển bằng một ngôn ngữ có thể được sử dụng bằng bất kỳ ngôn ngữ nào khác và phần tốt nhất là nó giúp mang lại kết nối từ ứng dụng này sang ứng dụng khác.

Khi hai hệ thống giao tiếp với nhau, hệ thống phần mềm yêu cầu dịch vụ được gọi là người yêu cầu dịch vụ và hệ thống phần mềm sẽ xử lý yêu cầu và cung cấp dịch vụ được gọi là nhà cung cấp dịch vụ.

Bây giờ, nếu bạn đang cân nhắc xem giao tiếp diễn ra như thế nào, hãy bắt đầu.



Có một số quy tắc xác định cách thức giao tiếp có thể xảy ra giữa các hệ thống khác nhau. Các quy tắc này bao gồm cách một hệ thống có thể yêu cầu dữ liệu từ hệ thống khác, các tham số cần thiết trong yêu cầu dữ liệu, cấu trúc của dữ liệu được tạo ra và các thông báo lỗi được hiển thị khi các quy tắc nhất định bị phá vỡ. Các quy tắc này được định nghĩa trong tệp có tên WSDL (Ngôn ngữ mô tả dịch vụ web) với phần mở rộng .wsdl.

Sau khi dịch vụ web được tạo, tệp WSDL được tạo để mô tả dịch vụ web sử dụng giao thức xà phòng () để xuất bản hoặc đăng ký dịch vụ trong UDDI (Khả năng tương tác và khám phá phân phối chung) để dịch vụ của chúng tôi được cung cấp cho những người khác.
UDDI xác định hệ thống phần mềm nào cần được liên hệ với loại dữ liệu nào.

Người yêu cầu dịch vụ liên hệ với UDDI và kiểm tra nhà cung cấp cung cấp dữ liệu mà họ cần. Sau đó, nó liên hệ với nhà cung cấp dịch vụ bằng giao thức xà phòng. Nhà cung cấp dịch vụ xác thực yêu cầu bằng cách tham chiếu đến WSDL và gửi lại dữ liệu có cấu trúc trong XML bằng Giao thức Soap. XML này lại được xác thực bằng XSD (Định nghĩa lược đồ XML - một tài liệu xác định quy tắc hoặc các phần tử cho XML).

Divya

Bây giờ bạn đã hiểu cách hoạt động của nó, hãy để chúng tôi phát triển một dịch vụ web.

Chủ yếu có ba khía cạnh chi phối sự phát triển dịch vụ web trong .NET.

1. Tạo dịch vụ web
2. Tạo proxy
3. Sử dụng dịch vụ web được tạo.

Để tạo một dịch vụ web trong .net:

1. Nhấp chuột phải vào dự án của bạn> Thêm> Mục mới.

1. Web> Dịch vụ Web
2. Đặt tên cho dịch vụ web của bạn
3. Nhấp vào thêm.

Lưu ý rằng các tệp dịch vụ web kết thúc bằng .asmx
Bây giờ bạn đã tạo một dịch vụ web mặc định, bạn sẽ thấy như sau:

using System using System.Collections.Generic using System.Linq using System.Web using System.Web.Services namespace WebApplication5 {/// /// Mô tả tóm tắt cho WebService2 /// [WebService (Namespace = 'http: // tempuri. org / ')] [WebServiceBinding (ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem (false)] // Để cho phép gọi Dịch vụ Web này từ tập lệnh, sử dụng ASP.NET AJAX, hãy bỏ ghi chú dòng sau. // [System.Web.Script.Services.ScriptService] public class WebService2: System.Web.Services.WebService {[WebMethod] public string HelloWorld () {return 'Hello World'}}}

Trong đoạn mã trên, lớp dịch vụ web kế thừa từ System.Web.Services.WebService, được bao quanh bởi thuộc tính dịch vụ Web [WebService], nơi bạn có thể chỉ định vùng tên và cung cấp mô tả ngắn gọn cho dịch vụ web.

Thuộc tính WebMethod [WebMethod], được sử dụng để khai báo một phương thức như một phần của dịch vụ web. Nó phải được đặt trước phần khai báo của mỗi phương thức bạn muốn hiển thị trong dịch vụ web và tất cả các phương thức phải được khai báo công khai.

Để tạo phương thức dịch vụ web của bạn, hãy thêm mã của bạn vào một phương thức công khai với thuộc tính phương thức web vào lớp WebService1. Ví dụ:

[WebMethod] public int ConvertToFarenheit (int cents) {int f = 0 f = (cents * 9/5) + 32 return f}

Sau khi chạy dịch vụ web, chúng tôi sẽ nhận được trang bên dưới:

Điều này bao gồm các phương pháp mà chúng tôi hiển thị trong dịch vụ web và cũng có liên kết đến mô tả dịch vụ là tệp WSDL.
Bây giờ để kiểm tra dịch vụ web của bạn, hãy nhấp vào phương pháp, để đến trang bên dưới. Chuyển giá trị tham số và nhấp vào gọi.


Bạn sẽ nhận được đầu ra của dịch vụ web như sau:

Bây giờ, hãy xem cách sử dụng dịch vụ web mà chúng tôi đã tạo trong ứng dụng của mình.
1. Trong dự án của bạn, nhấp chuột phải vào tham chiếu> thêm tham chiếu dịch vụ

Như được đưa ra trong ảnh chụp màn hình dưới đây:
1. Cung cấp URL của bộ mô tả dịch vụ hoặc tệp WSDL vào địa chỉ. Và nhấp vào đi.
Nó tìm thấy dịch vụ web mà chúng tôi đã tạo.
2. Bấm OK

cách phân tích cú pháp tệp xml trong java

Trong trình thám hiểm giải pháp, chúng ta có thể thấy, một thư mục tham chiếu dịch vụ được tạo trong Tài liệu tham khảo. Nó bao gồm một thư mục chứa tất cả các tệp liên quan đến việc sử dụng dịch vụ web

Ở đây, ServiceReference1 là dịch vụ web mà chúng tôi đã tạo.
Trong ServiceReference1> Reference.svcmap> reference.cs có một lớp proxy được tạo (WebService1SoapClient) mà chúng ta có thể gọi các phương thức được xác định trong dịch vụ web của mình.

Để sử dụng nó trong ứng dụng của chúng tôi:
1. Tạo đối tượng của lớp proxy.
2. Gọi các phương thức có sẵn trong dịch vụ web thông qua đối tượng của lớp proxy.

sử dụng Hệ thống sử dụng System.Collections.Generic sử dụng System.Linq sử dụng System.Web sử dụng System.Web.UI sử dụng System.Web.UI.WebControls sử dụng ServiceConsumeApp1.ServiceReference1 sử dụng ServiceConsumeApp1.ServiceReference1 không gian tên ServiceConsumeApp1 {công khai lớp WebForm1: System.Web. UI.Page {protected void btnConvertRates_Click (object sender, EventArgs e) {WebService1SoapClient fn1 = new WebService1SoapClient () TextBox2.Text = fn1.ConvertToFarenheit (Convert.ToInt32 (TextBox} ToString) ()}.

Khi chúng tôi chạy ứng dụng, đầu ra sẽ được hiển thị như sau, sau khi chúng tôi đã đặt các điều khiển thích hợp trong biểu mẫu web để hiển thị kết quả của chúng tôi.

Vì vậy, đây là cách chúng tôi tạo và sử dụng một dịch vụ web trong .NET.

Bạn có thể tạo nhiều dịch vụ web trong .NET với các bước nêu trên. Các dịch vụ web này có thể được truy cập bằng bất kỳ ứng dụng nào được xây dựng bằng bất kỳ ngôn ngữ nào. Do đó, các dịch vụ web giải quyết các vấn đề giao tiếp giữa các ứng dụng khác nhau và chứng minh một thỏa thuận thực sự.

Có một câu hỏi cho chúng tôi? Vui lòng đề cập đến nó trong phần bình luận và chúng tôi sẽ liên hệ lại với bạn.

Bài viết liên quan: