QUrlQuery 追加?

QUrlQuery append?

是否可以在不对 url 进行条带化的情况下使用 QUrlQuery 附加数据?

使用下面的代码将去除“?”之后的所有内容。和 结果是:

https://foobar.com/Info.xml.aspx?userdata=1234

我想得到:

https://foobar.com/Info.xml.aspx?user=jack&userdata=1234

QUrl url("https://foobar.com/Info.xml.aspx?user=jack&");
QString data = "1234"; 

QUrlQuery query;
query.addQueryItem("userdata", data);
url.setQuery(query); 

我问是因为我需要进行多次调用,每次都添加一个新参数并且 "building" 每次都从头开始 url 很烦人。

您必须获取查询然后添加项目:

QUrl url("https://foobar.com/Info.xml.aspx?user=jack&");

QString data = "1234";
QUrlQuery query(url.query());
query.addQueryItem("userdata", data);
url.setQuery(query);

qDebug()<<url;

输出:

QUrl("https://foobar.com/Info.xml.aspx?user=jack&userdata=1234")