[Interest] QWebFrame::toHtml() is encoding <> automatically

Richard Moore rich at kde.org
Tue Apr 2 14:01:03 CEST 2013


On 2 April 2013 12:36, Aaron Lewis <the.warl0ck.1989 at gmail.com> wrote:
> Below is a testing php script,
>
> <?php
>     echo $_GET['abc'], "<br/>";
>     echo htmlentities($_GET['abc']);
> ?>
>
> If I retrieve the contents of that page with chromium browser, showing
> the source code reveals contents like this:
>
> <><br/><>
>
> But with QWebFrame::toHtml(), all <> are encoded, and I got:
>
> <html><head></head><body><><br><> </body></html>
>
> That's weird, anyone know how to "stop" QtWebkit from encoding them?

Your script is sending completely invalid HTML, and from the looks of
it not setting the content type. This means you should expect the
results to be completely undefined. In this case, it looks as if
QtWebkit is treating it as plain text, wheras I can't even tell what
chromium is treating it as!

Regards

Rich.



More information about the Interest mailing list