Every version of Outlook on Windows, from 2003 through to 2016, fails to render an image when the query string contains required information for accessing the URL. Key screenshots from a test on Email On Acid are below.
I can’t tell whether this issue is because Outlook ignores the query string or actually removes it entirely, but it doesn’t really matter; the result is broken images when a user opens their mail.
The issue arose for me when trying to send messages with images from Cloudfront that use query string params to pass an access key, a signature, and an expiration date. Without the query data, the image can’t render.
The solution for my case (since I can’t change Cloudfront) will have to be either attaching the images and using cid references, or base64 encoding the images and embedding them inline. (Check out Sendgrid’s post on strategies for images in email for more details.) Either way, this is one more obnoxious pain to add to the long list of obnoxious pains when working with Outlook.
Update, 29 Sept. 2016: Email On Acid has confirmed on their forum that “Outlook doesn’t accept media query strings” on any version of the Windows client.
Update, 25 Oct. 2016: If a source URL has two slash characters in a row, Outlook will remove one of them. So for example,
Look out for this if you’re trying to write a proxy service to get around the limitations on query strings!