| 22 | } |
| 23 | |
| 24 | void XboxUserStep::perform() { |
| 25 | QString xbox_auth_template = R"XXX( |
| 26 | { |
| 27 | "Properties": { |
| 28 | "AuthMethod": "RPS", |
| 29 | "SiteName": "user.auth.xboxlive.com", |
| 30 | "RpsTicket": "d=%1" |
| 31 | }, |
| 32 | "RelyingParty": "http://auth.xboxlive.com", |
| 33 | "TokenType": "JWT" |
| 34 | } |
| 35 | )XXX"; |
| 36 | auto xbox_auth_data = xbox_auth_template.arg(m_data->msaToken.token); |
| 37 | |
| 38 | QNetworkRequest request = QNetworkRequest(QUrl("https://user.auth.xboxlive.com/user/authenticate")); |
| 39 | request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json"); |
| 40 | request.setRawHeader("Accept", "application/json"); |
| 41 | auto *requestor = new AuthRequest(this); |
| 42 | connect(requestor, &AuthRequest::finished, this, &XboxUserStep::onRequestDone); |
| 43 | requestor->post(request, xbox_auth_data.toUtf8()); |
| 44 | qDebug() << "First layer of XBox auth ... commencing."; |
| 45 | } |
| 46 | |
| 47 | void XboxUserStep::onRequestDone( |
| 48 | QNetworkReply::NetworkError error, |