Skip to content

Refactor requests to QNetworkAccessManager#15

Open
514ckw4r3 wants to merge 4 commits intomasterfrom
dev/NGQ-231
Open

Refactor requests to QNetworkAccessManager#15
514ckw4r3 wants to merge 4 commits intomasterfrom
dev/NGQ-231

Conversation

@514ckw4r3
Copy link
Contributor

Переделал запросы в ngstd через QNetworkAccessManager

@514ckw4r3 514ckw4r3 self-assigned this Feb 2, 2026
@514ckw4r3 514ckw4r3 added the enhancement New feature or request label Feb 2, 2026
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This pull request refactors the HTTP request implementation in the ngstd library to use Qt's QNetworkAccessManager instead of GDAL's CPLHTTPFetch functions. This is a significant architectural change that modernizes the HTTP request handling while maintaining the same external API.

Changes:

  • Replaced GDAL CPL HTTP functions with Qt QNetworkAccessManager for all HTTP operations
  • Implemented custom retry logic, timeout handling, and SSL error handling using Qt's networking classes
  • Added helper functions for request execution, JSON parsing, and proxy credential resolution
  • Migrated OAuth token refresh, file upload, and all GET/POST operations to the new implementation

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 19 comments.

File Description
src/core/request.h Added two new public methods: timeout() and retryDelay() to expose configuration values
src/core/request.cpp Complete refactoring of HTTP request logic from GDAL CPL to QNetworkAccessManager with new helper functions, retry logic, and error handling

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants