diff --git a/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py b/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py index 0f31b90959..b81d4a579e 100644 --- a/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py +++ b/plugins/Toolbox/src/CloudSync/CloudPackageChecker.py @@ -7,7 +7,7 @@ from PyQt5.QtNetwork import QNetworkReply, QNetworkRequest from UM.Logger import Logger from UM.Message import Message from UM.Signal import Signal -from UM.TaskManagement.HttpRequestScope import UltimakerCloudScope +from plugins.Toolbox.src.UltimakerCloudScope import UltimakerCloudScope from cura.CuraApplication import CuraApplication from plugins.Toolbox.src.CloudApiModel import CloudApiModel from plugins.Toolbox.src.CloudSync.SubscribedPackagesModel import SubscribedPackagesModel diff --git a/plugins/Toolbox/src/UltimakerCloudScope.py b/plugins/Toolbox/src/UltimakerCloudScope.py new file mode 100644 index 0000000000..b5f2983ee8 --- /dev/null +++ b/plugins/Toolbox/src/UltimakerCloudScope.py @@ -0,0 +1,20 @@ +from PyQt5.QtNetwork import QNetworkRequest + +from UM.TaskManagement.HttpRequestScope import DefaultUserAgentScope +from cura.API import Account +from cura.CuraApplication import CuraApplication + + +class UltimakerCloudScope(DefaultUserAgentScope): + def __init__(self, application: CuraApplication): + super().__init__(application) + api = application.getCuraAPI() + self._account = api.account # type: Account + + def request_hook(self, request: QNetworkRequest): + super().request_hook(request) + token = self._account.accessToken + header_dict = { + "Authorization": "Bearer {}".format(token) + } + self.add_headers(request, header_dict)