我正在使用以下代码来验证用户在我的asp.net应用程序中使用ServiceStack基本身份验证提供程序并接收serration异常。如果有人解决了这个问题,请回答。谢谢。
我在asp.net应用程序中使用以下代码:
<asp:Button ID="btnAuth" runat="server" OnClick="btnAuth_Click" Text="Authenticate"/>
我在代码隐藏文件中的 clien.Post方法上收到例外。
protected void btnAuth_Click(object sender, EventArgs e)
{
try
{
var baseUrl = Request.Url.GetLeftPart(UriPartial.Authority) + "/api";
var client = new JsonServiceClient(baseUrl);
var authResponse = client.Post<AuthResponse>(new Auth { UserName = "admin", Password = "12345" });
if (authResponse.ResponseStatus.ErrorCode == null)
{
//Do Something here
}
}
catch (WebServiceException ex)
{
throw ex;
}
}
Followin是我在 clien.Post方法上收到的执行细节:
[SerializationException: Type definitions should start with a '{', expecting serialized type 'AuthResponse', got string starting with:
答案 0 :(得分:2)
序列化异常,读取“期望序列化类型'X',字符串以:开头”表示序列化程序尝试从空字符串而不是正确的json格式字符串创建对象(“{Class: {属性:{子:值}}}“)
在这种情况下,最有可能的原因是 baseUrl 的服务器没有向POST请求返回任何响应(解释为空字符串)。可能是服务器端配置错误的URL或异常?