Fastlib網路模組 soap協議解決方案

2021-08-04 16:03:27 字數 1612 閱讀 6251

並不是所有的介面都是按照常規的來的。

比如前段時間我公司接了乙個三期的乙個專案,專案內使用乙個二封過的volley。我想將自己的庫移入來替代掉,但是發現這個專案使用的介面協議不太一樣,我分析了一下做了個簡單的二封。解決特殊協議的問題

首先有幾個要點

使用soap協議

介面傳送的是原始流資料

xml格式傳送和返回

這個專案已經寫好了協議的其它項。cxf代表具體介面位址,requestparam是傳送的引數。之後我們使用string.format(soap,cxf,requestparam,cxf);替換即可

xmlns:soapenv=

"" xmlns:cxf=

"">

<

soapenv

:header/>

%s>

%s%s>

fastlib網路功能中有傳送原始位元組流的功能

request.setbytestream(byte);

但是我們不直接使用,因為要傳送的引數個具體介面要填充到協議中然後再轉換成位元組組發出去,所以使用繼承來將這些重複的功能封一下

}這樣封裝好後用起來和request一樣,還是原來的味道,還是一樣的配方

介面的資料返回也是xml格式的。我們僅取return中的資料即可

使用全域性返回監聽.即所有網路請求返回都會過一遍這個監聽並且可以改變返回的資料,那麼我們只要把return中的資料拆出來即可

netmanager.getinstance().setgloballistener(new globallistener() catch (xmlpullparserexception | ioexception e) 

if(contentstr==null)

onerrorlistener(r,

"解析xml失敗");

return contentstr;

}});

自此,可以按照約定的協議來使用fastlib的網路功能了

request.put("userid"

,"1234");

request.setlistener(new ******listener>()

});net(request);

php擴充套件安裝soap模組

首先安裝完php 後最好保留當時安裝的檔案,比如我的路徑 export1 soft cd php 5.2.8 ext soap usr local php bin phpize configure with php config usr local php bin php config enable...

基於SOAP的xml網路互動心得

感謝小二同學將遇到的問題分享給我們,再此給以掌聲。如果看不懂下面文章的建議查詢一下http協議的文藝,對http協議要有個概念。xml網路互動心得目錄 一 xml解析 1 根路徑下 2 some路徑下 二 xml soap請求 一 xml解析 例 如下圖xml返回值 1 根路徑下 例 m檔案中 im...

soap簡單介紹以及Android網路連線

先看get和post的區別 1 get提交,請求的資料會附在url之後 就是把資料放置在http協議頭中 以?分 割url和傳輸資料,多個引數用 連線 例如 login.action?name hyddd password idontknow verify e4 bd a0 e5 a5 bd。如果資...