I need to send an html response to the browser containing a 1920x1080 png. It's a screenshot taken by an html query.
I encode the image in base64 and sends it embedded as an text/html content-type. Something simple like :
<HTML><HEAD>Whatever</HEAD><BODY><img src="data:image/png;base64,data"/></BODY></HTML>
It works fine on FF and Chrome, the problem is I need to support IE8. IE8 as a limit on the length of the data:uri.
If I compress the image so the png encoding is under 32k (about 600x500) I lose too much information.
What would be the easiest work around for this problem? (I don't have access to a server to host the image or such)
Вы всегда можете разбить изображение на 4 (или более) части и закодировать каждую часть отдельно.
Не могли бы вы просто сохранить образ где-нибудь, вернуть его путь, а затем изменить src на путь, который вы только что сгенерировали?
В конце концов мы отказались от поддержки IE8.
К счастью, это только для внутренней отладки.
Тем не менее, проблема осталась. Надеемся, что в IE9 не будет ограничения данных: uri.