| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- /*
- Copyright 2017 Herik Lima de Castro and Marcelo Medeiros Eler
- Distributed under MIT license, or public domain if desired and
- recognized in your jurisdiction.
- See file LICENSE for detail.
- */
- #include "urlencoder.h"
- CWF_BEGIN_NAMESPACE
- QString URLEncoder::decode(QByteArray url, bool replacePlusForSpace)
- {
- if (replacePlusForSpace)
- url = url.replace("+", " ");
- QUrl copy(url);
- copy.setQuery(copy.query(QUrl::FullyDecoded), QUrl::DecodedMode);
- return copy.toString();
- }
- QString URLEncoder::encode(const QByteArray &url)
- {
- QUrl copy(url);
- return copy.toEncoded();
- }
- QString URLEncoder::paramEncode(const QByteArray ¶m)
- {
- QUrl url("?p=" + param);
- return url.toEncoded().remove(0, 3);
- }
- QString URLEncoder::paramDecode(QByteArray param, bool replacePlusForSpace)
- {
- if (replacePlusForSpace)
- param = param.replace("+", " ");
- QUrl url("?p=" + param);
- url.setQuery(url.query(QUrl::FullyDecoded), QUrl::DecodedMode);
- return url.toString().remove(0, 3);
- }
- CWF_END_NAMESPACE
|