Ho creato un microservizio REST molto semplice che riceve informazioni su una e-mail e la invia. Il metodo Microservice send simile a questa:Come chiamare un microservizio in .NET
//EmailController
[HttpPost]
public IHttpActionResult Send(Email email)
{
// send email via exchange
}
Ora nella mia richiesta, ho chiamarlo usando RestSharp in questo modo:
var client = new RestClient("http://localhost:51467/api/");
var request = new RestRequest("email/send", Method.POST);
request.RequestFormat = DataFormat.Json;
dynamic obj = new ExpandoObject();
obj.FromAddress = from;
obj.ToAddress = to;
obj.Subject = subject;
obj.Body = body;
request.AddBody(obj);
client.Execute(request);
Domande che ho:
È questo il il modo migliore per fare la chiamata? Ovviamente in seguito dovrò aggiungere la gestione degli errori ecc., Ma sto parlando più del modo in cui sto usando RestSharp per effettuare la chiamata.
Sto trovando un po 'scomodo che la mia app abbia bisogno di sapere quale oggetto il microservice si aspetta di ricevere - non esiste alcun tipo di definizione/interfaccia/contratto che utilizza per essere sicuro. Questo è generalmente accettato come ok per REST o devo implementare una sorta di interfaccia che la mia app ha in modo che possa chiamare il mio microservizio in un modo un po 'più definito. E 'anche possibile qualcosa con REST?
Grazie per qualsiasi aiuto!
In primo luogo, solo perché il servizio è di piccole dimensioni o non fa molto, non lo rende un microservizio. I microservizi hanno un significato ben definito e non devono essere riposanti. –