QString url = QString("%1/userinfo").arg(m_keycloakHost);
	QNetworkRequest req(url);
	req.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");
	req.setRawHeader("Authorization", (QString("Bearer %1").arg(token)).toLatin1());
	QNetworkAccessManager* m = &m_mgr;
	QNetworkReply* reply = m->get(req);
	if (reply->error() != QNetworkReply::NoError) {
		qDebug() << "error:" << reply->error();
		return false;
	}

	//阻塞请求
	QEventLoop loop;
	connect(reply, SIGNAL(finished()), &loop, SLOT(quit()));
	loop.exec();

	QByteArray resp = reply->readAll();
	qDebug() << "resp:" << resp;
	QJsonDocument doc = QJsonDocument::fromJson(resp);
	QJsonObject obj = doc.object();
	QString userId = obj.value("sub").toString();
	QString userName = obj.value("preferred_username").toString();

	SaveUserName(userName,userId);

	reply->deleteLater();