




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
DelphiSOAP技術(shù)的實(shí)現(xiàn)一、開發(fā)SOAP服務(wù)端1、打開:[文件]/[新建]/[其他],出現(xiàn)以下界面:2、選擇ISAPI/INSAPIDynamicLinkLibrary3、在ServiceName中輸入接口名,如:現(xiàn)輸入媒體發(fā)送接口SendMedia4、出現(xiàn)SendMediaInf和SendMediaImpl兩個(gè)Pas文件,其中SendMediaInf是COM接口描述的文件,SendMediaImpl是接口的實(shí)現(xiàn)在SendMediaInf文件中出現(xiàn)ISendMedia=interface(IInvokable)的接口類型定義,現(xiàn)在接口類型描述中增加兩個(gè)函數(shù):0。functionechoSendSM(constSMContent,PhoneNum:String):integer;stdcall;、獲取短信發(fā)送次數(shù)。functionechoGetSendTimes:integer;stdcall;代碼:type{InvokableinterfacesmustderivefromIInvokableISendMedia=interface(IInvokable)['{A5D12FE2-EF42-401C-9C4A-9E4A322E74B4}']functionechoSendSM(constSMContent,PhoneNum:String):integer;stdcall;functionechogetSendTimes:integer;stdcall;end;5、SendMediaImplSendMediaInf函數(shù)描述,保持與接口中定義的函數(shù)保持同步type{TSendMedia}TSendMedia=class(TInvokableClass,ISendMedia)PublicfunctionechoSendSM(constSMContent,PhoneNum:String):integer;stdcall;functionechogetSendTimes:integer;stdcall;end;6、在SendMediaImpl文件中完成函數(shù)的實(shí)現(xiàn)functionTSendSM.echoSendSM(constSMContent,PhoneNum:String):integer;varStr:pchar;beginStr:=pchar('Sendto:['+PhoneNum+']Content:['+SMContent+']');WriteLog(Str);result:=0;end;functionTSendSM.echogetSendTimes:integer;beginresult:=GetSendTimes;end;varFileHandle:Thandle;SendTimes:integer;//私有函數(shù):寫日志前初始化procedureInitLogFile;varLogFile:String;beginLogFile:='C:\SendSM.log';ifFileExists(LogFile)thenbeginFileHandle:=FileOpen(LogFile,fmOpenReadWrite);FileSeek(FileHandle,0,2);endelsebeginFileHandle:=FileCreate(LogFile);end;end;//私有函數(shù):寫日志procedureWriteLog(constlog:pchar);varlogStr:Pchar;beginInitLogFile;logStr:=Pchar(log+#13#10);FileWrite(FileHandle,logStr^,length(logStr));FileClose(FileHandle);incTimes;end;procedureincTimes;begininc(SendTimes);end;7、編譯成功,完成SOAPSendMedia.dllDLL文件二、 將DLL文件掛載到IIS服務(wù)器,并獲取WSDL文件。1、安裝IIS后,打開Internet信息服務(wù)2、右擊默認(rèn)網(wǎng)站,新建虛擬目錄3、輸入DLL存放路徑3、點(diǎn)擊完成。4SendSM教本資源訪問選擇教本和可執(zhí)行文件]5、打開瀏覽器,訪問虛擬目錄中的SendMedia.dll,會發(fā)現(xiàn)有echoSendSM和echoGetSendTimes(注:下圖內(nèi)容不太準(zhǔn)確。6IsendMediaWSDLWSDLSendMedia.wsdl.7IsendMediaWSDLWSDLSendMedia.wsdl.三、創(chuàng)建訪問SOAP接口的客戶端1、通過WSDL文件獲取SOAP接口WSDLImporterWSDLSendMedia接口的Pas文件,其中有定義訪問SOAP接口的方法functionGetISendSM(UseWSDL:Boolean;Addr:string;HTTPRIO:THTTPRIO):IsendMedia;constdefURL ='6/SendSM/SendMedia.dll/soap/IsendMedia';defSvc ='ISendSMservice';defPrt ='ISendSMPort';Begin……….End2、連接SOAP接口VarSendSM:ISendMedia;SendSM:=ISendMedia.GetISendSM(false,'',nil);3、調(diào)用SOAP中的函數(shù)、短信發(fā)送函數(shù)ProcedureTForm1.SendTimesClick(Sender:TObject);BeginifSendSM.echoSendSM('HUAWEINJRESEARCH')=0thenShowMessage('ShortMessageSendOK!');End;、獲取短信發(fā)送次數(shù)函數(shù)Proce
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025翻譯服務(wù)合同(翻譯中心)
- 2025網(wǎng)絡(luò)版有條件借款合同范文
- 2025物業(yè)公司服務(wù)合同
- 社區(qū)個(gè)人工作計(jì)劃提升社區(qū)居民教育意識
- 2025財(cái)務(wù)咨詢合同書模板
- 中級收入建筑合同標(biāo)準(zhǔn)文本
- 2025公司員工勞動合同(電子版)模板
- 安陽木質(zhì)游樂施工方案
- 2025物流和倉儲業(yè)勞動合同(示范文本)
- 寫中介合同樣本
- 兒童太陽系知識科普課件
- 2024年全國中學(xué)生生物學(xué)聯(lián)賽試題含答案
- 第13課 現(xiàn)代戰(zhàn)爭與不同文化的碰撞和交流 課件(17張PPT)
- DB32∕T 3158-2016 內(nèi)河水上服務(wù)區(qū)建設(shè)標(biāo)準(zhǔn)
- CRRT vs 中毒血液凈化模式選擇
- 《汽車座椅制造工藝》PPT課件
- 《等量代換》ppt(基礎(chǔ)教育)
- 高壓液氧泵原理、結(jié)構(gòu)及檢修、結(jié)構(gòu)及檢修
- 標(biāo)準(zhǔn)件新舊標(biāo)準(zhǔn)德標(biāo)國際標(biāo)準(zhǔn)對照表
- 一課一練21:關(guān)聯(lián)速度模型(答案含解析)—2021屆高中物理一輪基礎(chǔ)復(fù)習(xí)檢測
- 高中化學(xué)選擇性必修3教材解讀(魯科版2021)
評論
0/150
提交評論