บริการบนเว็บ: ข้อตกลงที่แท้จริง



บริการเว็บสามารถเข้าถึงได้โดยแอปพลิเคชันที่สร้างขึ้นในภาษาใดก็ได้ จัดการปัญหาการสื่อสารระหว่างแอปพลิเคชันต่างๆ

เคยคิดที่จะช่วยเหลือใครบางคนและไม่พบวิธีที่จะทำหรือไม่? ใช่ฉันรู้ว่านักพัฒนาซอฟต์แวร์ไม่มีเวลาทำทั้งหมดนี้ ในความเป็นจริงส่วนหนึ่งของชีวิตของเราไปในการเข้ารหัสสำหรับแอปพลิเคชันบางอย่างหรืออื่น ๆ ดังนั้นทั้งหมดนี้ทำให้ฉันคิดว่าในฐานะนักพัฒนามีอะไรดีๆที่ฉันสามารถทำกับเพื่อนนักพัฒนาของฉันได้บ้าง





ทำไมไม่เขียนโค้ดที่นักพัฒนาเข้ารหัสสามารถใช้ในภาษาใดก็ได้ มันจะไม่น่ากลัวเหรอ?
ใช่ และเดาอะไร? วิธีแก้ปัญหาคือ -“ บริการบนเว็บ”

บริการเว็บตามคำจำกัดความของ W3C คือ 'ระบบซอฟต์แวร์ที่ออกแบบมาเพื่อรองรับการทำงานร่วมกันระหว่างเครื่องกับเครื่องผ่านเครือข่าย'



บริการเว็บที่พัฒนาในภาษาหนึ่งสามารถใช้ในภาษาอื่นได้และส่วนที่ดีที่สุดคือช่วยในการนำการเชื่อมต่อจากแอปพลิเคชันหนึ่งไปยังอีกแอปพลิเคชันหนึ่ง

เมื่อสองระบบสื่อสารกันระบบซอฟต์แวร์ที่ร้องขอบริการจะถูกเรียกว่าเป็นผู้ร้องขอบริการและระบบซอฟต์แวร์ที่จะดำเนินการตามคำขอและให้บริการเรียกว่าเป็นผู้ให้บริการ

ตอนนี้หากคุณกำลังไตร่ตรองว่าการสื่อสารเกิดขึ้นได้อย่างไรมาดูกัน



มีกฎบางอย่างที่กำหนดว่าการสื่อสารจะเกิดขึ้นระหว่างระบบต่างๆได้อย่างไร กฎเหล่านี้รวมถึงวิธีการที่ระบบหนึ่งสามารถร้องขอข้อมูลจากระบบอื่นพารามิเตอร์ที่จำเป็นในการร้องขอข้อมูลโครงสร้างของข้อมูลที่สร้างขึ้นและข้อความแสดงข้อผิดพลาดที่แสดงเมื่อกฎบางข้อเสีย กฎเหล่านี้กำหนดไว้ในไฟล์ชื่อ WSDL (Web Services Description Language) ที่มีนามสกุล. wsdl

หลังจากสร้างบริการเว็บไฟล์ WSDL จะถูกสร้างขึ้นเพื่ออธิบายบริการเว็บที่ใช้โปรโตคอล soap () เพื่อเผยแพร่หรือลงทะเบียนบริการใน UDDI (Universal Distribution Discovery and Interoperability) เพื่อให้บริการของเราพร้อมใช้งานสำหรับผู้อื่น
UDDI กำหนดระบบซอฟต์แวร์ที่ควรติดต่อสำหรับข้อมูลประเภทใด

ผู้ร้องขอบริการจะติดต่อ UDDI และตรวจสอบผู้ให้บริการที่ให้ข้อมูลที่ต้องการ จากนั้นจะติดต่อผู้ให้บริการโดยใช้โปรโตคอลสบู่ ผู้ให้บริการตรวจสอบคำขอโดยอ้างถึง WSDL และส่งข้อมูลที่มีโครงสร้างกลับใน XML โดยใช้ Soap Protocol XML นี้ได้รับการตรวจสอบความถูกต้องอีกครั้งโดยใช้ XSD (XML Schema Definition - เอกสารที่กำหนดกฎหรือองค์ประกอบสำหรับ XML)

Divya

เมื่อคุณเข้าใจวิธีการทำงานแล้วให้เราพัฒนาบริการเว็บ

ส่วนใหญ่มีสามประการที่ควบคุมการพัฒนาบริการเว็บใน. NET

1. การสร้างบริการเว็บ
2. การสร้างพร็อกซี
3. การใช้บริการเว็บที่สร้างขึ้น

ในการสร้างบริการเว็บใน. net:

1. คลิกขวาที่โครงการของคุณ> เพิ่ม> รายการใหม่

1. เว็บ> บริการเว็บ
2. ใส่ชื่อบริการเว็บของคุณ
3. คลิกเพิ่ม

โปรดทราบว่าไฟล์บริการบนเว็บลงท้ายด้วย. asmx
ตอนนี้คุณได้สร้างบริการเว็บเริ่มต้นแล้วคุณจะเห็นสิ่งต่อไปนี้:

การใช้ระบบโดยใช้ System.Collections.Generic โดยใช้ System.Linq โดยใช้ System.Web โดยใช้ System.Web.Services namespace WebApplication5 {/// /// สรุปคำอธิบายสำหรับ WebService2 /// [WebService (Namespace = 'http: // tempuri. org / ')] [WebServiceBinding (ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem (false)] // ในการอนุญาตให้เรียกใช้บริการเว็บนี้จากสคริปต์โดยใช้ ASP.NET AJAX ให้ยกเลิกการใส่เครื่องหมายในบรรทัดต่อไปนี้ // [System.Web.Script.Services.ScriptService] คลาสสาธารณะ WebService2: System.Web.Services.WebService {[WebMethod] สตริงสาธารณะ HelloWorld () {return 'Hello World'}}}

ในข้อมูลโค้ดด้านบนคลาสบริการเว็บจะสืบทอดมาจาก System.Web.Services.WebService ซึ่งล้อมรอบด้วยแอตทริบิวต์บริการเว็บ [WebService] ซึ่งคุณสามารถระบุเนมสเปซและให้คำอธิบายสั้น ๆ สำหรับบริการเว็บ

WebMethod แอตทริบิวต์ [WebMethod] ใช้เพื่อประกาศวิธีการเป็นส่วนหนึ่งของบริการบนเว็บ ต้องวางไว้ก่อนการประกาศของแต่ละวิธีที่คุณต้องการเปิดเผยในบริการเว็บและวิธีการทั้งหมดควรประกาศต่อสาธารณะ

ในการสร้างวิธีการบริการเว็บของคุณให้เพิ่มรหัสของคุณลงในวิธีการสาธารณะด้วยแอตทริบิวต์ web method ในคลาส WebService1 ตัวอย่างเช่น:

[WebMethod] int สาธารณะ ConvertToFarenheit (int celsius) {int f = 0 f = (celsius * 9/5) + 32 return f}

หลังจากนั้นเรียกใช้บริการเว็บเราจะได้รับหน้าด้านล่าง:

ซึ่งรวมถึงวิธีการที่เราเปิดเผยในบริการบนเว็บและลิงก์ไปยังคำอธิบายบริการซึ่งเป็นไฟล์ WSDL
ตอนนี้เพื่อทดสอบบริการเว็บของคุณคลิกที่วิธีการเพื่อรับหน้าด้านล่าง ส่งค่าพารามิเตอร์และคลิกเรียกใช้


คุณจะได้รับผลลัพธ์ของบริการเว็บดังนี้:

ตอนนี้เรามาดูวิธีการใช้บริการเว็บที่เราสร้างไว้ในแอปพลิเคชันของเรา
1. ในโครงการของคุณคลิกขวาที่การอ้างอิง> เพิ่มการอ้างอิงบริการ

ตามที่ระบุในภาพหน้าจอด้านล่าง:
1. ระบุ URL ของ service descriptor หรือไฟล์ WSDL เป็นที่อยู่ แล้วคลิกไป.
พบบริการเว็บที่เราสร้างขึ้น
2. คลิกตกลง

เรียงลำดับ () ใน c ++

ในตัวสำรวจโซลูชันที่เราเห็นไดเร็กทอรีอ้างอิงบริการถูกสร้างขึ้นภายใต้การอ้างอิง ประกอบด้วยโฟลเดอร์ที่มีไฟล์ทั้งหมดที่เกี่ยวข้องกับการใช้บริการเว็บ

ที่นี่ ServiceReference1 คือบริการบนเว็บที่เราสร้างขึ้น
ใน ServiceReference1> Reference.svcmap> reference.cs มีการสร้างคลาสพร็อกซี (WebService1SoapClient) ซึ่งเราสามารถเรียกใช้เมธอดที่กำหนดไว้ในบริการบนเว็บของเรา

เพื่อใช้ในแอปพลิเคชันของเรา:
1. สร้างอ็อบเจ็กต์ของคลาสพร็อกซี
2. เรียกใช้เมธอดที่มีอยู่ในบริการเว็บผ่านอ็อบเจ็กต์ของคลาสพร็อกซี

การใช้ระบบโดยใช้ System.Collections.Generic โดยใช้ System.Linq โดยใช้ System.Web โดยใช้ System.Web.UI โดยใช้ System.Web.UI.WebControls โดยใช้ ServiceConsumeApp1.ServiceReference1 โดยใช้ ServiceConsumeApp1.ServiceReference1 เนมสเปซ ServiceConsumeApp1 {public partial class WebForm1: System.Web UI.Page {protected void btnConvertRates_Click (ผู้ส่งวัตถุ, EventArgs e) {WebService1SoapClient fn1 = WebService1SoapClient ใหม่ () TextBox2.Text = fn1.ConvertToFarenheit (Convert ToInt32 (TextBox1.Text))}

เมื่อเราเรียกใช้แอปพลิเคชันผลลัพธ์จะแสดงดังต่อไปนี้หลังจากที่เราได้วางการควบคุมที่เหมาะสมในแบบฟอร์มเว็บเพื่อแสดงผลลัพธ์ของเรา

นี่คือวิธีที่เราสร้างและใช้บริการเว็บใน. NET

คุณสามารถสร้างบริการบนเว็บได้มากมายใน. NET ด้วยขั้นตอนข้างต้นที่กล่าวถึง บริการเว็บเหล่านี้สามารถเข้าถึงได้โดยแอปพลิเคชันที่สร้างขึ้นในภาษาใดก็ได้ บริการบนเว็บจึงช่วยแก้ปัญหาการสื่อสารระหว่างแอปพลิเคชันต่างๆและพิสูจน์ได้ว่าเป็นเรื่องจริง

มีคำถามสำหรับเรา? โปรดระบุไว้ในส่วนความคิดเห็นแล้วเราจะติดต่อกลับไป

กระทู้ที่เกี่ยวข้อง: