成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

php實現(xiàn)webservice(實測C#及java可調(diào)用)

arashicage / 1788人閱讀

摘要:具體如何操作這里跳過,實現(xiàn)是需要擴展的。返回值也很特別,不是直接返回,而是把它放到一個對象里再返回。返回值中值對應的是中的名稱。最后按運行可以查看到對應的輸出,如下圖所示,說明實現(xiàn)的在中可以正確調(diào)用。

使用PHP搭建起一個其他語言如C#、JAVA可用的Webservice的方法與網(wǎng)上大多數(shù)所述的用PHP建立的webservice感覺是有差別的。對于接口的輸入?yún)?shù)及輸出參數(shù)較為復雜的情況下,這里建議直接將輸入?yún)?shù)及輸出參數(shù)統(tǒng)一為XML string或者是Json string。這里著重介紹的是怎么實現(xiàn)一個webservice,而對于輸入輸出參數(shù)的格式,如何操作XML string就不多介紹,一搜一大把,但是要注意對于XML和json的話要注意參數(shù)的過濾和檢查。該文介紹的是帶wsdl文件的webservice,no-wsdl的方式較為簡單,這里不做介紹

檢查并開啟soap擴展

首先需要開啟soap擴展,即將php.ini文件中的extension=php_soap.dll前的分號去掉然后重啟apache。查看phpinfo是否開啟soap。具體如何操作這里跳過,實現(xiàn)webservice是需要soap擴展的。

在VS中建立C#的webservice

網(wǎng)上找到的php生產(chǎn)wsdl的方式類生成的wsdl文件從而搭建的webservice只有php能用,簡直不要再坑了。所以這里就以曲線救國的方式來產(chǎn)生wsdl文件。先通過C#搭建一個webservice來生成wsdl,之后只要稍加更改就可以用了。

1.新建項目->ASP.NET Web應用程序建立一個工程;

2.b.右擊解決方案->添加->新建項選擇Web服務(ASMX);

3.編寫接口,注意C#中要發(fā)布出來的function前要加[WebMethod],其中可能還要新建一些類:

4.編寫完成按ctrl+F5運行出現(xiàn)如下所示,之后在url后面加上?wsdl會出現(xiàn)如下圖所示的wsdl,另存為就可以了。


5.將生成的WSDL文件中的里的location改為PHP webservice的發(fā)布地址:

6.PHP編寫webservice接口:

7.發(fā)布webservice:

setClass(SrcMESWebService::class);
$webserver->handle();

注意,Web Service的方法在聲明時至多一個參數(shù), 可是在調(diào)用該方法時就必須傳value1,value2兩個參數(shù)。(這一點十分令人費解,我的理解是,在調(diào)用該方法時,系統(tǒng)把所有參數(shù)都放到一個對象里傳過來)。返回值也很特別,不是直接返回$arry,而是把它放到一個對象里再返回。返回值中key值對應的是wsdl中的名稱。

使用C#進行調(diào)用測試

1.新建項目->ASP.NET Web應用程序建立一個工程,與前面的一樣;
2.右擊項目下面的引用->添加服務引用,點擊高級跳出服務引用設置,點擊里面右下角的添加Web引用,出現(xiàn)如下圖所示:

3.在URL中填入發(fā)布的webservice服務的地址,回車后若正確出現(xiàn)下圖,之后根據(jù)需求修改Web引用名后點擊添加引用:

4.然后右擊項目->添加->新建項,選擇web窗體,編輯.aspx.cs文件的內(nèi)容。


5.e.最后按ctrl+F5運行可以查看到對應的輸出,如下圖所示,說明php實現(xiàn)的webservice在C#中可以正確調(diào)用。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/28534.html

相關(guān)文章

  • WebService就是這么簡單

    摘要:它使用方式,接收和響應外部系統(tǒng)的某種請求?;仡櫸覀冊趯W習基礎網(wǎng)絡編程章節(jié)已經(jīng)知道了這么一個連接了。使用指定名稱的命名空間。名詞簡單對象訪問協(xié)議作為一個基于語言的協(xié)議用于有網(wǎng)上傳輸數(shù)據(jù)。以的根元素出現(xiàn)。代理這么一個概念就更加清晰了。 WebService介紹 首先我們來談一下為什么需要學習webService這樣的一個技術(shù)吧.... 問題一 如果我們的網(wǎng)站需要提供一個天氣預報這樣一個需求...

    SwordFly 評論0 收藏0
  • JavaScript對象數(shù)組按指定屬性和排序方向進行排序

    摘要:對數(shù)據(jù)進行排序是必不可少的功能。對簡單的名值對象按照指定屬性和排序方向進行排序根據(jù)排序?qū)傩约芭判蚍较?,對兩個項依次進行比較,并返回代表排序位置的值。按照指定屬性及升降方向進行排序。 標簽:JavaScript 對象數(shù)組 排序 引言 在以數(shù)據(jù)為中心的信息系統(tǒng)中,以表格形式展示數(shù)據(jù)是在常見不過的方式了。對數(shù)據(jù)進行排序是必不可少的功能。排序可以分為按單個字段排序和按多個字段不同排序方向排序。...

    z2xy 評論0 收藏0
  • spring boot開發(fā)soap webservice

    摘要:本文介紹如何在中開發(fā)接口,以及接口如何同時支持和兩種協(xié)議。該功能很簡單,就是通過一個人的姓名查詢這個人的詳細信息。就是關(guān)鍵,如本次請求報文如下就是,對應。測試使用進行測試,通過地址導入文件進行測試。測試這樣就實現(xiàn)了和同時提供的目的。 介紹spring boot web模塊提供了RestController實現(xiàn)restful,第一次看到這個名字的時候以為還有SoapController,...

    Ashin 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<