public BrokerRConnectionBuilder WithHandler <T>(string path, RequestBodyHandler <T> handler) { return(WithHandler(path, async(request, cancellationToken) => { var body = JsonSerializer.Deserialize <T>(request.Body); await handler(body, cancellationToken); })); }
public IActionResult CreateOrUpdate([FromHeader] string username) { try { string body = RequestBodyHandler.GetRawBodyString(HttpContext, new UTF8Encoding()); Clinic newClinic = JsonConvert.DeserializeObject <Clinic>(body); ObjectsRepository.clinics[ObjectsRepository.clinics.FindIndex(x => x.Id.Equals(newClinic.Id))] = newClinic; return(Ok(ObjectsRepository.clinics.Find(x => x.Id.Equals(newClinic.Id)))); }catch (Exception e) { return(BadRequest()); } }
public void HttpRequestReader_ParseWithContentLength() { var buffer = new MemoryStream(Encoding.UTF8.GetBytes(GetRequestTextWithContentLength())) { Position = 0 }; var parser = new RawHttpRequestReader(buffer, new HttpServerOptions()); var request = parser.ReadAsync(CancellationToken.None).Result; var bodyReader = new RequestBodyHandler(); Assert.IsTrue(request != null, "Parse failed."); Assert.AreEqual("Body123{}%!(:<>=", Encoding.UTF8.GetString(StreamToArray(request.Body))); }
public BrokerROptions WithHandler <T>(string path, RequestBodyHandler <T> handler) { ConnectionBuilder.WithHandler(path, handler); return(this); }