[Interest] Preventing QUrl from encoding query parameters

Konstantin Tokarev annulen at yandex.ru
Sun Aug 3 16:52:05 CEST 2014



03.08.2014, 06:18, "Thiago Macieira" <thiago.macieira at intel.com>:
> On Saturday 02 August 2014 13:26:15 Lorne Sturtevant wrote:
>>  On 08/02/2014 11:27 AM, Dmitriy Purgin wrote:
>>>  Hi,
>>>
>>>  If you pass this raw QString or QByteArray somewhere, why use QUrl
>>>
>>>  then? Anyway, try QUrl::fromPercentEncoding():
>>>      QUrl url("http://example.com?query=[{\"name\":\"value\"}]");
>>>      qDebug() << QUrl::fromPercentEncoding(url.toEncoded());
>>>      // produces: "http://example.com?query=[{"name":"value"}]"
>>  I should clarify that I need the QUrl because I need to pass it to a
>>  QNetworkRequest.  That class only takes QUrls.  I can't pass a string.
>>
>>  QUrl::fromPercentEncoding() produces a QString.  That's not what I need.
>
> You can't do what you want. QUrl will normalise what it has to.
>
> So just make sure that you are running Qt 5.3, since there were bugs in
> previous versions. If that doesn't work, fix your server.

...or use different HTTP client implementation.


-- 
Regards,
Konstantin



More information about the Interest mailing list