ln.json.http/HTTPRequestExtensions.cs

22 lines
752 B
C#

using System;
using ln.http;
using ln.json.mapping;
namespace ln.json.http
{
public static class HTTPRequestExtensions
{
public static HttpResponse SendJSON(this HttpRequest request, object value)
{
HttpResponse response = new HttpResponse(request);
response.SetHeader("Content-Type", "application/json");
response.ContentWriter.Write(
(value is JSONValue jvalue) ? jvalue.ToString() : JSONMapper.DefaultMapper.ToJson(value).ToString()
);
response.ContentWriter.Flush();
return response;
}
public static JSONValue GetJSON(this HttpRequest httpRequest) => JSONParser.Parse(httpRequest.ContentReader.ReadToEnd());
}
}