WEBService Client(PHP)->Server(JAVA)
最近在做WEBService开发,我这边是做请求端,去请求JAVA做的WEBService,疑问如下,
$ViewProjectNumber['Project'] = '
$encodded = new SoapVar($ViewProjectNumber, SOAP_ENC_OBJECT);
$result = $client->oaProjectRequest($encodded);
Server接收$encodded显示出来的值??
?
回复讨论(解决方案)
print_r($encodded);
(
[enc_type] => 301
[enc_value] => Array
(
[Project] =>
)
)
显然不是在客户端转义的
但作为xml节点数据的话,则被转义是正确的,不然就被当做节点了
你或许要使用 CDATA
print_r($encodded);
(
[enc_type] => 301
[enc_value] => Array
(
[Project] =>
)
)
显然不是在客户端转义的
但作为xml节点数据的话,则被转义是正确的,不然就被当做节点了
你或许要使用 CDATA
在这方法基础上,如何防止转义呢?能说明下吗?
写成这样看看
$ViewProjectNumber['Project'] = '1]]>';
写成这样看看
$ViewProjectNumber['Project'] = '1]]>';
接收到的信息如下:
@xuzuning 我给你发下gettypes获取到的东西
Array
(
[0] => struct UnitReserve {
Reserve Reserve;
}
[1] => struct Revenue {
ContractUnitNumber ContractUnitNumber;
ElevatorModel ElevatorModel;
CostQuantity CostQuantity;
ContractValueNetOfTax_EQ ContractValueNetOfTax_EQ;
FreeMaintenanceRevenue_EQ FreeMaintenanceRevenue_EQ;
CTURevenue_IN CTURevenue_IN;
ContractValueNetOfTax_IN ContractValueNetOfTax_IN;
Currency Currency;
RevenueReserve RevenueReserve;
}
[2] => string ContractUnitNumber
[3] => string ElevatorModel
[4] => decimal CostQuantity
[5] => decimal ContractValueNetOfTax_EQ
[6] => decimal FreeMaintenanceRevenue_EQ
[7] => decimal CTURevenue_IN
[8] => decimal ContractValueNetOfTax_IN
[9] => string Currency
[10] => struct RevenueReserve {
Reserve Reserve;
}
[11] => struct Project {
ViewProjectNumber ViewProjectNumber;
boolean NewInstallation;
boolean Modification;
boolean CrossRegionSales;
PersonResponsible PersonResponsible;
EquipmentContractNumber EquipmentContractNumber;
FrameworkAgreementNumber FrameworkAgreementNumber;
InstallationContractNumber InstallationContractNumber;
ProjectName_CN ProjectName_CN;
ProjectName_EN ProjectName_EN;
string PlannedStartDate;
string PlannedFinishDate;
EquipmentSignOffCustomer EquipmentSignOffCustomer;
BillToParty BillToParty;
InstallationContractSignOffCustomer InstallationContractSignOffCustomer;
BillToParty2 BillToParty2;
EquipmentContract EquipmentContract;
InstallationCommissioningContract InstallationCommissioningContract;
ProjectReserve ProjectReserve;
Unit Unit;
}
[12] => string ViewProjectNumber
[13] => string PersonResponsible
[14] => string EquipmentContractNumber
[15] => string FrameworkAgreementNumber
[16] => string InstallationContractNumber
[17] => string ProjectName_CN
[18] => string ProjectName_EN
[19] => string EquipmentSignOffCustomer
[20] => string BillToParty
[21] => string InstallationContractSignOffCustomer
[22] => string BillToParty2
[23] => string EquipmentContract
[24] => string InstallationCommissioningContract
[25] => struct Cost {
ContractUnitNumber ContractUnitNumber;
CostItem CostItem;
CostIndicator CostIndicator;
CostCode CostCode;
CostQuantity CostQuantity;
ProcurementPrice ProcurementPrice;
Currency Currency;
CostReserve CostReserve;
}
[26] => string ContractUnitNumber
[27] => string CostItem
[28] => string CostIndicator
[29] => string CostCode
[30] => decimal CostQuantity
[31] => decimal ProcurementPrice
[32] => string Currency
[33] => struct ProjectRequest {
Project Project;
}
[34] => struct Unit {
ContractUnitNumber ContractUnitNumber;
MFG_WBS MFG_WBS;
GADNumber GADNumber;
TP2QuotationNumber TP2QuotationNumber;
DAUnitNumber DAUnitNumber;
UnitInterestsAttributeBranch UnitInterestsAttributeBranch;
SupplierFactory SupplierFactory;
UnitQuantity UnitQuantity;
ElevatorModel ElevatorModel;
RatedLoad RatedLoad;
RatedSpeed RatedSpeed;
Floors Floors;
Stops Stops;
TravellingHeight TravellingHeight;
MainDoorSideLandingDoors MainDoorSideLandingDoors;
OppositeDoorSideLandingDoors OppositeDoorSideLandingDoors;
LandingDoors LandingDoors;
Length Length;
InstallContractSigningBranch InstallContractSigningBranch;
InstallContractExecutionBranch InstallContractExecutionBranch;
ElevatorType ElevatorType;
NonStopFloors NonStopFloors;
OpenThroughDoor OpenThroughDoor;
FloorsBothSideOpenThroughDoor FloorsBothSideOpenThroughDoor;
ShaftHeight ShaftHeight;
StepWidth StepWidth;
InclinationAngle InclinationAngle;
Rise Rise;
EscalatorWhereUsed EscalatorWhereUsed;
Segment Segment;
IntervalSupport IntervalSupport;
UnitReserve UnitReserve;
Revenue Revenue;
Cost Cost;
}
[35] => string ContractUnitNumber
[36] => string MFG_WBS
[37] => string GADNumber
[38] => string TP2QuotationNumber
[39] => string DAUnitNumber
[40] => string UnitInterestsAttributeBranch
[41] => string SupplierFactory
[42] => decimal UnitQuantity
[43] => string ElevatorModel
[44] => decimal RatedLoad
[45] => decimal RatedSpeed
[46] => decimal Floors
[47] => decimal Stops
[48] => decimal TravellingHeight
[49] => decimal MainDoorSideLandingDoors
[50] => decimal OppositeDoorSideLandingDoors
[51] => decimal LandingDoors
[52] => decimal Length
[53] => string InstallContractSigningBranch
[54] => string InstallContractExecutionBranch
[55] => string ElevatorType
[56] => decimal NonStopFloors
[57] => string OpenThroughDoor
[58] => decimal FloorsBothSideOpenThroughDoor
[59] => decimal ShaftHeight
[60] => decimal StepWidth
[61] => decimal InclinationAngle
[62] => decimal Rise
[63] => string EscalatorWhereUsed
[64] => decimal Segment
[65] => string IntervalSupport
[66] => struct CostReserve {
Reserve Reserve;
}
[67] => struct ProjectReserve {
Reserve Reserve;
}
[68] => struct Reserve {
Key Key;
Value Value;
}
[69] => string Key
[70] => string Value
)
-----------------------------------------
我现在给你发下我现在如何调用的
$client = new Zend_Soap_Client('http://localhost:8080/mockoaProjectRequestBinding?WSDL') ;
$xml = simplexml_load_file("a.xml") ;
$client->oaProjectRequest($xml) ;
但是Server接收的时候,

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

在PHP中,應使用password_hash和password_verify函數實現安全的密碼哈希處理,不應使用MD5或SHA1。1)password_hash生成包含鹽值的哈希,增強安全性。 2)password_verify驗證密碼,通過比較哈希值確保安全。 3)MD5和SHA1易受攻擊且缺乏鹽值,不適合現代密碼安全。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP通過$\_FILES變量處理文件上傳,確保安全性的方法包括:1.檢查上傳錯誤,2.驗證文件類型和大小,3.防止文件覆蓋,4.移動文件到永久存儲位置。

PHP類型提示提升代碼質量和可讀性。 1)標量類型提示:自PHP7.0起,允許在函數參數中指定基本數據類型,如int、float等。 2)返回類型提示:確保函數返回值類型的一致性。 3)聯合類型提示:自PHP8.0起,允許在函數參數或返回值中指定多個類型。 4)可空類型提示:允許包含null值,處理可能返回空值的函數。

PHP仍然具有活力,其在現代編程領域中依然佔據重要地位。 1)PHP的簡單易學和強大社區支持使其在Web開發中廣泛應用;2)其靈活性和穩定性使其在處理Web表單、數據庫操作和文件處理等方面表現出色;3)PHP不斷進化和優化,適用於初學者和經驗豐富的開發者。

PHP和Python各有優勢,選擇應基於項目需求。 1.PHP適合web開發,語法簡單,執行效率高。 2.Python適用於數據科學和機器學習,語法簡潔,庫豐富。
