def METHOD_NAME(self, url: str, payload: dict, handle_func):
    if not self.request_active:
        request = QNetworkRequest(QUrl(url))
        request.setHeader(QNetworkRequest.ContentTypeHeader, "application/json")
        self.request_active = RequestQueueItem(handle_func=handle_func)
        payload = json.dumps(payload).encode("utf-8")
        request.setHeader(
            QNetworkRequest.UserAgentHeader,
            "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36",
        )
        if self.authorization_token is not None:
            request.setRawHeader(
                b"Authorization", self.authorization_token.encode()
            )
        self.request = self.manager.METHOD_NAME(request, payload)
        self.request.finished.connect(self.prepare_data)
    else:
        self.request_queue.append(
            RequestQueueItem(
                method="post", url=url, payload=payload, handle_func=handle_func
            )
        )