【发布时间】:2016-07-28 22:30:44
【问题描述】:
我在 Windows Phone7 应用程序(VS2010)中使用 Web 服务,
该服务有一个验证用户名和密码的方法,但是在我从最终用户的文本框中获取用户名和密码并调用该服务后,验证会引发如下异常:
FaultException 未处理
System.Web.Services.Protocols.SoapException:服务器无法处理请求。 ---> System.FormatException:Base-64 字符数组或字符串的长度无效。 在 System.Convert.FromBase64_Decode(Char* startInputPtr, Int32 inputLength, Byte* >startDestPtr, Int32 destLength)
在 System.Convert.FromBase64CharPtr(Char* inputPtr, Int32 inputLength)
在 System.Convert.FromBase64String(String s)
在 myService.Mobile.Decode(String str)
....
---内部异常堆栈跟踪结束---
嗯,基本上这个异常告诉我invalid length for base-64 char array or string. 当我传递一个四个字符或四个字符的倍数的字符串时,它可以工作。
我应该怎么做才能解决这个问题?
【问题讨论】:
-
你如何调用服务?
-
如果你是这个意思,我正在使用肥皂客户端。
-
根据@Marc Gravell 的回答,您需要对其进行 Base-64 编码并将其发送到服务。