0

我正在尝试连接到 gmail 并使用 atom 文件。我对包含 !#$%^&* 字符的密码有疑问。

    pNetworkManager = new QNetworkAccessManager(this);

    connect(pNetworkManager, SIGNAL(finished(QNetworkReply*)), 
            this, SLOT(result(QNetworkReply*)));

    Settings settings;
    settings.load();
    QString url;

    url.append("https://");
    url.append(settings.getUserName());
    url.append(":");
    url.append(QUrl::toPercentEncoding(settings.getPassword()));
    url.append("@mail.google.com/mail/feed/atom");


    pNetworkManager->get(QNetworkRequest(QUrl(url.toUtf8())));

我收到回复“协议”未知“
Qt 4.8

这是如何正确完成的

4

1 回答 1

1

你为什么不QUrl直接构建一个?

QUrl url("https://mail.google.com/mail/feed/atom");
url.setUserName(settings.getUserName());
url.setPassword(settings.getPassword());
pNetworkManager->get(QNetworkRequest(url));

它处理所有必要的编码并QNetworkRequest直接使用它。无需弄乱字符串编码。

于 2012-11-05T21:39:47.480 回答