C ++ - 获取GitHub项目的最新版本

时间:2018-05-26 06:56:12

标签: c++ qt github-api

我有一个程序,它使用存储在GitHub项目中的一组文件。

我想查看该GitHub项目的最新发布版本并下载这些文件,如果它比本地文件更新。

有谁知道如何检查发布版本并从(使用QT C ++)下载?

我的课程在Qt 5(https://github.com/bq/QssWeb2Board

完成

1 个答案:

答案 0 :(得分:0)

检查评论的lib并进行一些挖掘我找到了答案。这是主要代码。感谢。

QUrl url("https://api.github.com/repos/" + owner +"/" + project + "/tags");
qInfo() << url.toString();
QNetworkRequest request(url);
request.setHeader(QNetworkRequest::ContentTypeHeader, "application/json");
QNetworkAccessManager nam;
QNetworkReply * reply = nam.get(request);

timeout=false;
timer->start(5000);

while(!timeout){
    qApp->processEvents();
    if(reply->isFinished()) break;
}

if(reply->isFinished()){
    QByteArray response_data = reply->readAll();
    QJsonDocument json = QJsonDocument::fromJson(response_data);
    return json[0]["name"].toString();
}else{
    return QString("Timeout");
}