Note from Apex Web Services and Callouts:
An Apex trigger can execute a callout when the callout is invoked within a method defined as asynchronous: that is, defined with the @future keyword. The @future annotation signifies that the Apex method executes asynchronously. For more information on the @future annotation, please read the documentation.
Also worth reading: HTTP Callout from TriggersHTTP Callout from Triggers