آموزش WSDL > مفهوم المنت Biding در <portType>
مفهوم <Binding> در WSDL :
همانطور که در بخش قبل اشاره کردیم ، المنت <Binding> ، در یک سند WSDL ، فرمت داده ای و پروتکلی که وب سرویس
برای ارسال و دریافت اطلاعات خود از آنها استفاده می کند ، را تعیین می نماید .
در این بخش نمونه یک کد وب سرویس را به شما نمایش داده ایم .
این وب سرویس از یک تابع request-response ، برای ارسال اطلاعات خود استفاده می کند
. در این مثال نشان داده ایم که چگونه یک المنت <Binding> ، پروتکل و فرمت داده
ای را برای یک المنت <portType>
تعیین می کند .
کد مثال را مرور نمایید ، سپس به تشریح هر یک از بخش های آن پرداخته ایم :
کد نمونه
یک سند
WSDL
با المنت
Binding
|
<message name="getTermRequest">
<part name="term" type="xs:string"/>
</message>
<message name="getTermResponse">
<part name="value" type="xs:string"/>
</message>
<portType name="glossaryTerms">
<operation name="getTerm">
<input message="getTermRequest"/>
<output message="getTermResponse"/>
</operation>
</portType>
<binding type="glossaryTerms" name="b1">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"
/>
<operation>
<soap:operation soapAction="http://example.com/getTerm"/>
<input><soap:body use="literal"/></input>
<output><soap:body use="literal"/></output>
</operation>
</binding>
|
تشریح کد مثال :
- المنت <Binding> دارای 2 خاصیت مهم است : name و type .
خاصیت name یک نام دلخواه را برای المنت <Binding> تعیین می کند ( می توانید
هر نامی را به کار ببرید ) ، که از این نام برای دسترسی به المنت در سطح برنامه استفاده
می شود .
خاصیت type نیز به المنت <portType> ای اشاره می کند ، که المنت <Binding>
، نوع پروتکل آن را تعیین می کند . در این مثال مقدار این خاصیت ، glossaryTerms
می باشد .
- همچنین المنت <soap:binding> ، دو خاصیت مهم دارد : style و transport .
خاصیت style می تواند دو مقدار " rpc " یا " documnet " را داشته باشد ، که ما در این
مثال ، مقدار " document " را انتخاب کرده ایم .
خاصیت transport ، نیز نوع
پروتکل SOAP مورد استفاده را برای ارسال اطلاعات بر روی اینترنت تعیین کرده
است ، که در این مثال HTTP می باشد .
- المنت operation نیز ، هر تابع یا operation مربوط به المنت <portType> که قرار
است اجرا شود ، را تعیین می کند .
برای هر operation یک خاصیت soapAction متناظر با آن نیز باید
تعیین شود .
همچنین باید تعیین نمایید که هر المنت input و output اطلاعات خود را به
چه صورت کد نماید
، که در مثال فوق ما از literal ، به معنای فرمت متنی استفاده
نموده ایم .