日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

soap响应报文拼装_SOAP学习,构建实际的报文格式

發(fā)布時(shí)間:2025/3/21 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 soap响应报文拼装_SOAP学习,构建实际的报文格式 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

因?yàn)樾枰鲆粋€(gè)SOAP的接口對(duì)接,對(duì)方環(huán)境沒(méi)有弄好不能抓包,也只會(huì)調(diào)用不懂格式構(gòu)成,我們只想做個(gè)輕量級(jí)的接口,不需要支持SOAP的具體格式,只需要針對(duì)接口指定的具體參數(shù)名,解析字符串就可以了。

所以需要通過(guò)抓包確定一下soap的報(bào)文格式,方便做字符串解析和報(bào)文拼裝。

因此準(zhǔn)備構(gòu)建一個(gè)php的soap環(huán)境,進(jìn)行抓包。

當(dāng)前環(huán)境

centos6.3系統(tǒng),默認(rèn)php不支持soap,下載了php5.6版本

編譯

./configure ?'--with-libxml-dir=/usr/lib' '--with-zlib' '--with-gd' '--with-zlib-dir=/usr/local' '--with-mysql' '--enable-sockets' '--enable-mbstring' '--enable-soap' '--enable-safe-mode' '--enable-ftp' '--with-png-dir=/usr/local' '--with-freetype-dir=/usr/local' '--with-jpeg-dir=/usr/local' '--with-sqlite=shared'

發(fā)現(xiàn)找不到對(duì)應(yīng)的iconv庫(kù),估計(jì)是在默認(rèn)路徑里面找不到。

所以重新編譯了iconv庫(kù),設(shè)置./configure --prefix=/usr/local/libiconv

再編譯php加上一句話'--with-iconv=/usr/local/libiconv'

./configure ?'--with-libxml-dir=/usr/lib' '--with-zlib' '--with-gd' '--with-zlib-dir=/usr/local' '--with-mysql' '--enable-sockets' '--enable-mbstring' '--enable-soap' '--enable-safe-mode' '--enable-ftp' '--with-png-dir=/usr/local' '--with-freetype-dir=/usr/local' '--with-jpeg-dir=/usr/local' '--with-sqlite=shared' '--with-iconv=/usr/local/libiconv'

make

make install

php -m|grep soap

顯示安裝成功

很悲劇的發(fā)現(xiàn)apache的phpinfo里面使用php還是5.3.3版本,替換/usr/bin/php為新版本,重啟apache,但是無(wú)效,使用的還是舊版本的php。找了半天沒(méi)有找到解決辦法。

按照另外一種方法,將soap.so設(shè)置進(jìn)php.ini里面,但是發(fā)現(xiàn)php根本沒(méi)有編譯出這個(gè)庫(kù),只有一個(gè)opcache.so。按照網(wǎng)上的方法,準(zhǔn)備編譯php安裝目錄下的ext/soap制作so,發(fā)現(xiàn)連configure都沒(méi)有,估計(jì)是舊版本的功能。本來(lái)想找一下5.3.3版本,但是官位已經(jīng)沒(méi)有這么舊的版本了。

網(wǎng)上檢查了一下php各版本的新增功能,發(fā)現(xiàn)當(dāng)前php支持內(nèi)置一個(gè)http服務(wù)器。

php -S localhost:3300 -t /path/to/root

可以啟動(dòng)一個(gè)端口為3300的http服務(wù)了,總算不用去折騰該死的apache了。

按照網(wǎng)上的流程,構(gòu)建一個(gè)server和client。

首先放上Server.wsdl

紅色的返回結(jié)果,2個(gè)參數(shù),一個(gè)是result一個(gè)是錯(cuò)誤原因,類(lèi)型是wsdl:types,特別折騰,為了這個(gè)返回值弄了半天,對(duì)方是用java的,也說(shuō)不明白。

青色是輸入?yún)?shù),5個(gè)獨(dú)立參數(shù),很簡(jiǎn)單。

紫色是請(qǐng)求地址,客戶(hù)端拿到這個(gè)wsdl后,會(huì)向這個(gè)地址請(qǐng)求數(shù)據(jù)。

看看client2.php<?php

$soap?=?new?SoapClient("Service.wsdl");

$soap->TESTSOAP("1","2","3",0,"4");

?>

很簡(jiǎn)單就兩句話,通過(guò)wsdl傳入5個(gè)參數(shù)。

再看Server.php

注意這個(gè)就是wsdl里面紫色框內(nèi)的url地址。<?php

class?Service?{

public?function?TESTSOAP($a,$b,$c,$d,$e){

return?0;

}

}

$server?=?new?SoapServer('Service.wsdl',?array('soap_version'?=>?SOAP_1_2));

$server->setClass("Service");?//注冊(cè)Service類(lèi)的所有方法

$server->handle();?//處理請(qǐng)求

?>

同樣很簡(jiǎn)單。

抓包,啟動(dòng)php client2.php

查看抓包報(bào)文,格式很簡(jiǎn)單,構(gòu)建字符串很容易,解析固定的參數(shù)也不難。

但是有個(gè)問(wèn)題,就是返回值(0 ),返回值不能識(shí)別。估計(jì)返回個(gè)0看來(lái)是不行的。

這里在client里面打印了一下返回值的格式<?php

$soap?=?new?SoapClient("Service.wsdl");

$a1?=?$soap->TESTSOAP("1","2","3",0,"4");

echo?gettype($a1);

echo?"\n";

echo?var_dump($a1);

?>

發(fā)現(xiàn)是stdclass object,我就在function TESTSOAP做了如下修改$andy?=?array();

$andy?=?(object)$andy;

$andy->a?=?100;

$andy->b?=?"hahahaha";

return?$andy;

雖然是object了,但是還是不對(duì),格式不正確,那么這個(gè)wsdl:types到底是個(gè)什么東西,后面實(shí)現(xiàn)了用map試試,總算是實(shí)驗(yàn)成果了。$cardUID?=?array(

'Result'=>'100',

'ErrorDescription'=>'aaaaa'

);

return?$cardUID;

抓包如下

可以看見(jiàn)100和aaaaa。

如此,soap的實(shí)際格式也一覽無(wú)余了,只是簡(jiǎn)單實(shí)現(xiàn)幾個(gè)接口,用字符串拼裝和解析就可以完成了。

總結(jié)

以上是生活随笔為你收集整理的soap响应报文拼装_SOAP学习,构建实际的报文格式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲乱码中文字幕久久孕妇黑人 | 91亚洲精品一区二区乱码 | 国产伦精品一区二区三区妓女下载 | 欧美日本在线看 | 综合色99| 美女扒开屁股让男人捅 | 亚洲精品视频一区二区三区 | 国产免费毛卡片 | 国产欧美亚洲精品 | 国产av日韩一区二区三区精品 | 精品亚洲永久免费精品 | 日日做夜夜爽毛片麻豆 | 热热热av| 亚洲三区av| av中文字幕一区 | 泽村玲子在线 | 色男人在线| 久久99精品久久久久久 | 亚洲av无一区二区三区怡春院 | 欧美黄色a视频 | 色a视频| 古风h啪肉h文 | 日韩在线一区二区三区 | 中文字幕 日韩有码 | 亚洲成人精选 | 一区二区三区四区在线视频 | 怡红院毛片 | 国产日本一区二区三区 | 欧美亚洲韩国 | 久久免费看少妇 | 波多野结衣在线观看一区 | 99久久久国产精品无码免费 | 开元在线观看视频国语 | 久久九九久精品国产免费直播 | 日本a v在线播放 | 国产精品久久久久久久久久妞妞 | 爆操老女人| 在线污视频 | 在线观看网页视频 | 日本精品在线观看视频 | 国产精品伦理 | 国产高清毛片 | 国产精品23p| 黄瓜视频污在线观看 | 免费的黄网站 | 成人乱人乱一区二区三区一级视频 | 99精品久久久| 亚洲精品视频导航 | 在线观看www.| 台湾佬成人中文网222vvv | 蜜桃av噜噜一区二区三区麻豆 | 久久精品区 | 一本一道久久综合 | 欧美偷拍少妇精品一区 | 超碰五月天 | 日韩av线 | 亚洲一区免费在线 | 日韩精品在线看 | 啊av在线 | 亚洲一区二区成人 | 国产福利片在线观看 | 激情综合五月婷婷 | 日韩黄色大片 | 欧美一级欧美三级 | 涩涩网站在线观看 | 久久精品一区二区三 | 黄色av在| 另类小说久久 | 国产精品视频免费播放 | 亚洲午夜精品久久久久久app | 91看片免费版 | 免费荫蒂添的好舒服视频 | 天堂影音 | 天海翼中文字幕 | 欧美一级专区 | 天天综合网久久综合网 | 超碰综合网 | 日本猛少妇色xxxxx | 人操人操 | 亚洲人精品午夜射精日韩 | 琪琪女色窝窝777777 | 四虎影院在线 | 在线视频h| 成人国产精品久久久网站 | 午夜合集| 久久久久久国产精品免费 | 久久国产精品-国产精品 | 人人上人人干 | 五月婷婷久久综合 | 成人v| 美女福利在线 | 少妇人妻偷人精品视频蜜桃 | 91aaaa| 免费国产一区二区三区 | 欧美大片xxx | 亚洲精华液一区二区 | 我会温柔一点的日剧 | 国产丝袜在线播放 | 欧美日韩一级在线观看 |