0
我需要將一個二進制數據塊傳遞給Web服務。我傳遞的對象是API的一部分,因此Serialize/Deserialize/Byte函數內置於API類中。據我所知,它不是顯式的XML序列化。VB.net將二進制對象發送到Web服務時出錯
不幸的是,無論何時將數據傳遞到我的Web服務,即使作爲編碼字符串,該服務都會返回「(400)錯誤請求」錯誤。如果我刪除的編碼數據,並用簡單的字符串替換變量,適當的響應返回,排除了認證,服務錯誤等
'Convert the byte array into an encoded string'
Dim unicodeEncoder As New UnicodeEncoding()
Dim serializedData As String = unicodeEncoder.GetString(myObject.Bytes).Trim()
Dim webAuth As New myWebService.ServiceSoapClient
MessageBox.Show(webAuth.VerifyFeatureSet(serializedData , "", "", "", ""))
對我怎麼能做到這一點有什麼建議?如果我需要以不同的方式對數據進行編碼,請在遠端對其進行解碼。
您是否嘗試過使用64Base轉換? – 2010-11-09 09:42:46
我可以在Base64中發送數據,但是當我將其取出時,我收到以下消息:從字符串「」轉換爲鍵入「Double」無效。使用此代碼:Dim bt As Byte()= System.Convert.FromBase64String(Trim(base64DataString)) – Brad 2010-11-09 15:18:29
下班回家,現在運行。也許我在做了其他更改後忘記了構建。謝謝您的幫助。 Base64編碼完美。 – Brad 2010-11-10 02:47:51