Просмотр исходного кода

Provide file size and an arbitrary name to the upload request

Apparently the Cloud will need to know the file size before it gets uploaded. It is used as a redundancy code to verify that it's not corrupt there.
Perhaps they should ask for a CRC instead, being more reliable against an upload containing only null bytes or whatever, but that is not up to me to decide.

Contributes to issue CURA-8609.
Ghostkeeper 3 лет назад
Родитель
Сommit
bdc269f8ab
1 измененных файлов с 2 добавлено и 1 удалено
  1. 2 1
      cura/PrinterOutput/UploadMaterialsJob.py

+ 2 - 1
cura/PrinterOutput/UploadMaterialsJob.py

@@ -46,10 +46,11 @@ class UploadMaterialsJob(Job):
         self._archive_filename = archive_file.name
 
         self._material_sync.exportAll(QUrl.fromLocalFile(self._archive_filename), notify_progress = self.uploadProgressChanged)
+        file_size = os.path.getsize(self._archive_filename)
 
         http = HttpRequestManager.getInstance()
         http.get(
-            url = self.UPLOAD_REQUEST_URL,
+            url = self.UPLOAD_REQUEST_URL + f"?file_size={file_size}&file_name=cura.umm",  # File name can be anything as long as it's .umm. It's not used by Cloud or firmware.
             callback = self.onUploadRequestCompleted,
             error_callback = self.onError,
             scope = self._scope