|
@@ -1,96 +0,0 @@
|
|
-#include "WebAPIBase.h"
|
|
|
|
-
|
|
|
|
-#include "lhhttpapi.h"
|
|
|
|
-
|
|
|
|
-WebAPIBase::WebAPIBase()
|
|
|
|
-{
|
|
|
|
- m_logger = spdlog::get("FromWebAPI");
|
|
|
|
- if(m_logger == nullptr)
|
|
|
|
- {
|
|
|
|
- fmt::print("FromWebAPI logger is nullptr");
|
|
|
|
- return;
|
|
|
|
- }
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-WebAPIBase::~WebAPIBase()
|
|
|
|
-{
|
|
|
|
- if(m_httpApi != nullptr)
|
|
|
|
- {
|
|
|
|
- delete m_httpApi;
|
|
|
|
- m_httpApi = nullptr;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-/* 初始化WebAPI */
|
|
|
|
-bool WebAPIBase::initWebApi(const QString& url, const QString& serID, const QString appType, const QString serverIP)
|
|
|
|
-{
|
|
|
|
- if(m_httpApi == nullptr)
|
|
|
|
- {
|
|
|
|
- m_httpApi = new lhhttpapi;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- if(!m_httpApi->Load())
|
|
|
|
- {
|
|
|
|
- SPDLOG_LOGGER_ERROR(m_logger, "Load WebAPI failed");
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
- SPDLOG_LOGGER_DEBUG(m_logger, "URL: {}", url.toStdString());
|
|
|
|
- SPDLOG_LOGGER_DEBUG(m_logger, "ServerID: {}", serID.toStdString());
|
|
|
|
- SPDLOG_LOGGER_DEBUG(m_logger, "ServerKey: {}", appType.toStdString());
|
|
|
|
-
|
|
|
|
- void* pHttp = nullptr;
|
|
|
|
- int i = 0;
|
|
|
|
- for(i = 0; i < 3; i++)
|
|
|
|
- {
|
|
|
|
- pHttp = m_httpApi->DBInit(url.toStdString().c_str(), true);
|
|
|
|
- if(pHttp != nullptr)
|
|
|
|
- {
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- SPDLOG_LOGGER_ERROR(m_logger, "设置WebAPI地址失败: {}", m_httpApi->DoGetLastError(&i).toStdString());
|
|
|
|
- }
|
|
|
|
- if(i >= 3)
|
|
|
|
- {
|
|
|
|
- SPDLOG_LOGGER_ERROR(m_logger, "WebAPI设置地址错误!");
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- int ret = 0;
|
|
|
|
-
|
|
|
|
-#ifdef QT_DEBUG
|
|
|
|
- /* 获取服务器列表 */
|
|
|
|
- // char serverList[8192]={0};
|
|
|
|
- // ret = m_httpApi->DBGetServerList(serverList, 8192-1);
|
|
|
|
- // if(ret != 0)
|
|
|
|
- // {
|
|
|
|
- // SPDLOG_LOGGER_ERROR(m_logger, "Get server list failed: {}, error info: {}", ret, m_httpApi->DoGetLastError(&ret).toStdString());
|
|
|
|
- // return false;
|
|
|
|
- // }
|
|
|
|
- // SPDLOG_LOGGER_INFO(m_logger, QString("\nGet server list success:%1").arg(serverList));
|
|
|
|
-#endif
|
|
|
|
-
|
|
|
|
- /* 登录,第二个参数是限制的服务 */
|
|
|
|
- for(i = 0; i < 3; i++)
|
|
|
|
- {
|
|
|
|
- ret = m_httpApi->DBLogin("", serID, appType, m_userToken, true, pHttp);
|
|
|
|
- if(ret == 0)
|
|
|
|
- {
|
|
|
|
- break;
|
|
|
|
- }
|
|
|
|
- SPDLOG_LOGGER_ERROR(m_logger, "Login failed: {}, error info: {}", ret, m_httpApi->DoGetLastError(&ret).toStdString());
|
|
|
|
- /* 登录失败,等待一段时间 */
|
|
|
|
- QThread::msleep(200);
|
|
|
|
- }
|
|
|
|
- if(i >= 3)
|
|
|
|
- {
|
|
|
|
- SPDLOG_LOGGER_ERROR(m_logger, "登陆WebAPI失败!");
|
|
|
|
- return false;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- SPDLOG_LOGGER_INFO(m_logger, "WebAPI Login success!");
|
|
|
|
-
|
|
|
|
- return true;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
-
|
|
|