示例#1
0
        public async Task <IActionResult> HandleHook()
        {
            LogHeaders(Request.Headers);

            var verified = _signatureVerifier.Verify(Request, DateTime.UtcNow);

            if (!verified)
            {
                _logger.LogWarning("Bad Signature!");
                return(this.Unauthorized());
            }

            // the body is json, but we aren't trying to deserialize it here--we're just dumping it to the message sink
            using StreamReader reader = new StreamReader(Request.Body, Encoding.UTF8);
            var content = await reader.ReadToEndAsync();

            _sink.HandleMessage(content);

            return(Ok());
        }