我有以下方法:
QUrl makeUrl(const QString &method, const QList< QPair<QString, QString> > &items)
{
QUrl url;
url.setScheme("http");
url.setHost("foo.com");
url.setPath(method);
QUrlQuery q;
q.setQueryItems(items);
url.setQuery(q);
qDebug() << "makeUrl(" << method << "," << items << "):" << url;
return url;
}
显然总是返回空网址。
我的应用输出的示例:
makeUrl( "changeDirectory" , (QPair("a","1")) ): QUrl("")
makeUrl( "openScene" , (QPair("x","67ffce8e211085cc"), QPair("y","e1-ttt")) ): QUrl("")
那是为什么?
根据QUrl的文档:
也可以通过调用setScheme()来逐步构建URL, setUserName(),setPassword(),setHost(),setPort(),setPath(), setQuery()和setFragment()。