AshleyMedway / MailJet.NET

.NET Client for MailJet
MIT License
8 stars 11 forks source link

Feat - Request Interceptor #20

Closed apawsey closed 7 years ago

apawsey commented 7 years ago

Added the ability to intercept a request to alter the request before it's sent... primarily for adding additional parameters etc.

eg:

MailJetClient client = new MailJetClient("key1", "key2");
            client.RequestInterceptor = request =>
            {
                if (request.Resource == "send/message")
                {
                    request.ModifyBody(o =>
                    {
                        if (o["MJ-TemplateID"] != null)
                        {
                            o.Add("MJ-TemplateErrorReporting", "admin@mycompany.net");
                        }
                        return o;
                    });
                }
                return request;
            };

Unfortunately I also did a bit of fiddling on explicit types etc ... sorry... bit OCD

AshleyMedway commented 7 years ago

I like the feature, but I need you to rollback the naming as it would introduce breaking changes.