Obtaining Upload Progresses
If you have any questions during development, post them on the Issues page of GitHub. For details about parameters and usage of each API, see the .
You can call PutObjectRequest.setProgressListener to configure the data transmission interface to obtain upload progresses. Sample code is as follows:
// Hard-coded or plaintext AK/SK are risky. For security purposes, encrypt your AK/SK and store them in the configuration file or environment variables. In this example, the AK/SK are stored in environment variables for identity authentication. Before running this example, configure environment variables ACCESS_KEY_ID and SECRET_ACCESS_KEY_ID. // Obtain an AK/SK pair on the management console. For details, see https://support.huaweicloud.com/eu/usermanual-ca/ca_01_0003.html. String ak = System.getenv("ACCESS_KEY_ID"); String sk = System.getenv("SECRET_ACCESS_KEY_ID"); String endPoint = "https://your-endpoint"; // Create an instance of ObsClient. ObsClient obsClient = new ObsClient(ak, sk, endPoint); PutObjectRequest request = new PutObjectRequest("bucketname", "objectname"); request.setFile(new File("localfile")); // localfile indicates the path of the local file to be uploaded. You need to specify the file name. request.setProgressListener(new ProgressListener() { @Override public void progressChanged(ProgressStatus status) { // Obtain the average upload rate. Log.i("PutObject", "AverageSpeed:" + status.getAverageSpeed()); // Obtain the upload progress in percentage. Log.i("PutObject", "TransferPercentage:" + status.getTransferPercentage()); } }); // Refresh the upload progress each time 1 MB data is uploaded. request.setProgressInterval(1024 * 1024L); obsClient.putObject(request);
- You can query the upload progress when uploading an object in streaming, file-based, multipart, appendable, or resumable mode.
- If the value of ProgressStatus.getTransferPercentage() is -1, the content is uploaded in streaming mode. In this case, you must set the object length (Content-Length) in the object attribute.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.