做了一個利用webserver介面訪問遠端服務器的程式,網路連接沒有問題,但是輸入函式的查詢命令后始終報錯,請高手幫忙解決,謝謝!代碼如下:
Dim soapClient As New SoapClient30
Dim getData As String
soapClient.ClientProperty("ServerHTTPRequest") = True
soapClient.MSSoapInit “http://210.100.49.138/trffweb/services/TmriOutAccess?wsdl”
soapClient.ConnectorProperty("Timeout") = "9000"
headstr = "<?xml version=" + Chr(34) & "1.0" & Chr(34) + " " + "encoding=" + Chr(34) & "GBK" & Chr(34) + "?>" + "<root>" + "<QueryCondition>" + "<hp>"+ “02”+"</hp>"+"<zl>"+ “1234”+"</zl>" "</QueryCondition>" + "</root>"
getData = soapClient.ObjectOut("01", UTF8Encode(headstr))
當執行到最后一步時出現如下錯誤:
WSDLReader:XML Parser failed at linenumber 0,linepasition 0,
reason is:指定資源下載失敗。
HRESULT=0x1:函式不正確。
-WSDLReader:loading of the WSDL file failed
HRESULT=0x80070057:引數錯誤。
-Client:One of the paeameters supplied is invalid.
HRESULT=0x80070057:引數錯誤
ObjectOut是對方服務器指定的函式
是不是我的SOAP Toolkit 3.0使用的錯誤,還是陳述句錯誤,請高手幫忙指點。
uj5u.com熱心網友回復:
干嘛自己拼接xml,soap工具包可以自動創建soap xmluj5u.com熱心網友回復:
干嘛自己拼接xml,soap工具包可以自動創建soap xml請指點soap工具包自動創建soap xml,謝謝!
uj5u.com熱心網友回復:
headstr = "<?xml version=" + Chr(34) & "1.0" & Chr(34) + " " + "encoding=" + Chr(34) & "GBK" & Chr(34) + "?>" + "<root>" + "<QueryCondition>" + "<hp>"+ “02”+"</hp>"+"<zl>"+ “1234”+"</zl>" + "</QueryCondition>" + "</root>"紅字部位少個+號,建議你先把headstr列印出來看看headstr內容是否正確
uj5u.com熱心網友回復:
另外,人家明顯要求的是GBK編碼的xml檔案,你用UTF8Encode把xml轉成UTF8格式的,不知道會不會有影響。uj5u.com熱心網友回復:
對方的介面規則必須要把中文用UTF8Encode把xml轉成UTF8格式,這個沒有影響。對方的webserver使用java寫的,不知道SoapClient30還有沒有其他的用法,請高手指教,謝謝!轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/110952.html
標籤:網絡編程
