IPWorks S3 2020 Node.js Edition

Questions / Feedback?

ObjectPrefix Property

A prefix used to restrict the results returned when listing objects.

Syntax

 s3client.getObjectPrefix([callback])
 s3client.setObjectPrefix( objectPrefix, [callback])

Default Value

""

Callback

The 'callback' parameter specifies a function which will be called when the operation completes (or an error is encountered). If the 'callback' parameter is not specified, then the method will block and will not return until the operation completes (or an error is encountered).

The callback for the getObjectPrefix([callback]) method is defined as:

function(err, data){ }

'err' is the error that occurred. If there was no error, then 'err' is 'null'.

'data' is the value returned by the method.

The callback for the setObjectPrefix([callback]) method is defined as:

function(err){ }

'err' is the error that occurred. If there was no error, then 'err' is 'null'.

'err' has 2 properties which hold detailed information:

err.code
err.message

Remarks

This property, if non-empty, is used to restrict the results returned by ListObjects (or ListVersions) to only the objects (or object versions) whose names begin with the given value.

Object Hierarchy Traversal

By using the ObjectDelimiter and ObjectPrefix properties in tandem, applications can effectively "traverse" a virtual hierarchy of objects (or object versions) as if it were a filesystem. For example, assume that objects with the following names exist within a bucket:

  • MyCompany
  • MyCompany/Department1
  • MyCompany/Department2
  • MyCompany/Department2/EmployeeA
  • MyCompany/Department2/EmployeeB

With ObjectDelimiter set to /, we can set ObjectPrefix to successively "deeper" values before calling ListObjects or ListVersions for the following effect:

ObjectPrefix Value Objects Returned Prefixes Returned
(empty) MyCompany MyCompany/
MyCompany/ MyCompany/Department1
MyCompany/Department2
MyCompany/Department2/
MyCompany/Department2/ MyCompany/Department2/EmployeeA
MyCompany/Department2/EmployeeB
(none)

This property is not available at design time.

Data Type

String

 
 
Copyright (c) 2021 /n software inc. - All rights reserved.
IPWorks S3 2020 Node.js Edition - Version 20.0 [Build 7722]