2013-05-18 3 views
5

Ich verwende den folgenden Code, um den Benutzer mit ServiceStack Basic Auth Provider in meiner asp.net-Anwendung zu authentifizieren und zu empfangen Serilization exception.Please Antwort, wenn jemand dieses Problem gelöst hat. Vielen Dank.Service Stack: Typdefinitionen sollten mit '{' beginnen, serialisierten Typ 'AuthResponse' erwarten, String beginnend mit

Ich verwende den folgenden Code in meiner asp.net Anwendung:

<asp:Button ID="btnAuth" runat="server" OnClick="btnAuth_Click" Text="Authenticate"/> 

ich hinter Datei Ausnahme auf clien.Post Methode in Code am recieving.

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 ist Exeception Details, die ich auf clien.Post Methode am recieving:

[SerializationException: Type definitions should start with a '{', expecting serialized type 'AuthResponse', got string starting with: 
+0

Werfen Sie einen Blick auf die angenommene Antwort auf diesen Beitrag: http://StackOverflow.com/Questions/12064166/How-To-use-Servicestack-Authentication-correctly-in-asp-net-mvc-controller Hoffe, dass hilft . –

+0

@DavidTansey, wie hängt das mit dem Problem zusammen? Ich laufe auf denselben Fehler und ich arbeite nicht einmal mit irgendeiner Webanwendung. Das Problem liegt in der Serialisierung von Objekten, nicht in der Authentifizierung. –

+0

Wie steht diese Frage zu MVC? Könnten Sie bitte die Tags korrigieren, wenn nicht? Danke – Javier

Antwort

1

Serialisierung Ausnahme, der "erwartet serialisierte Typ 'X', wurde mit Zeichenfolge beginnen:" bedeutet, dass Der Serializer versucht, ein Objekt aus einer leeren Zeichenfolge anstelle einer richtigen JSON-formatierten Zeichenfolge ("{Class: {Property: {Sub: value}}}") zu erstellen.

In diesem Fall wahrscheinlich am Server baseUrl keine Antwort (interpretiert als leere Zeichenfolge) auf eine POST-Anfrage. Falsch konfigurierte URL oder Ausnahme auf Serverseite, vielleicht?