private string SendMessageByKafka(CartaoDeCreditoRequest request) { var config = new ProducerConfig { BootstrapServers = "kafka:9093" }; using (var producer = new ProducerBuilder <Null, string>(config).Build()) { try { var sendResult = producer.ProduceAsync("fila_pagamento_cartao", new Message <Null, string> { Value = JsonConvert.SerializeObject(request) }).GetAwaiter().GetResult(); return($"Mensagem '{sendResult.Value}' de '{sendResult.TopicPartitionOffset}'"); } catch (ProduceException <Null, string> e) { Console.WriteLine($"Delivery failed: {e.Error.Reason}"); } } return(string.Empty); }
public IActionResult Post([FromBody] CartaoDeCreditoRequest request) { return(Ok(SendMessageByKafka(request))); }