KDE(KIO)下来自TransferJob的HTTP错误代码

问题描述 投票:1回答:1

我正在KDE 5下启动HTTP GET作业,job = KIO::get(url, KIO::NoReload, KIO::HideProgressInfo);

在连接到KIO::TransferJob::result的插槽中,我的job->error()等于0,但KIO::TransferJob::isErrorPage()等于true。并且data包含以下内容:

<html>
<head><title>403 Forbidden</title></head>
<body bgcolor="white">
<center><h1>403 Forbidden</h1></center>
</body>
</html>

据我了解,slave http作业表明该页面是错误页面,但是此错误的代码未转发给父作业,或者我找不到找到它的方法。我想获取代码(403),而不解析接收到的数据。有可能吗?

https://httpstat.us/403可用于测试

linux qt kde
1个回答
0
投票

不!你不能这样做。唯一的选择是TransferJob::isErrorPage(),以了解是否发生任何错误。按照transferjob.cpp]中的这一行代码

     q->connect(slave, &SlaveInterface::errorPage, q, [this]() {
         m_errorPage = true;
     });
© www.soinside.com 2019 - 2024. All rights reserved.