2013-06-20 6 views
5

Einige serwer sendet POST-Anfragen mit den folgenden Informationen:Parsing JSON-POST-Anfrage C#

{ 
    payload: { 
    uid: "900af657a65e", 
    amount: 50, 
    adjusted_amount: 25 
}, 
signature: "4dd0f5da77ecaf88628967bbd91d9506" 
} 

Wie shoud ich erfolgreich verarbeiten, dass in meinem ASHX Handler?

+5

, die nicht gültig JSON ist. – SLaks

+0

Also was ist das? Im 'Dokumentations'-Beispiel in Ruby sehe ich, dass sie die JSON-Bibliothek verwenden, um diese zu analysieren. – user2441297

+0

Die Schlüssel müssen in Anführungszeichen gesetzt werden. –

Antwort

9

Wie SLaks festgestellt, das ist nicht gültig JSON. Im Allgemeinen ist eine gute Lösung für das Serialisieren/Deserialisieren von JSON in .NET die JSON.NET-Bibliothek: http://json.codeplex.com/. Dort gibt es viele Dokumentationen, die Ihnen den Einstieg erleichtern sollten.

Edit: die Anfrage Körper zu lesen, versuchen Sie so etwas wie

string postData = new System.IO.StreamReader(context.Request.InputStream).ReadToEnd();