Creating a Signed URL
API Description
You can use this API to generate a URL whose Query parameter is carried with authentication information, by specifying the AK and SK, HTTP method, and request parameter. You can use a signed URL to perform specific operations on OBS.
Method Definition
ObsClient.createSignedUrlSync
Request Parameter
Field | Type | Optional or Mandatory | Description |
|---|---|---|---|
Method | String | Mandatory | HTTP method. Possible values are:
|
Bucket | String | Optional | Bucket name |
Key | String | Optional | Object name |
SpecialParam | String | Optional | Special operator, which indicates the sub-resource to access. For details, see Table 2. |
Expires | Number | Optional | Expiration time of the signed URL, in seconds. The default value is 300. |
Headers | Object | Optional | Headers in the request |
QueryParams | Object | Optional | Query parameters in the request |
Constant | Applicable API |
|---|---|
storagePolicy | Specify or obtain bucket storage classes. |
quota | Specify or obtain bucket quotas. |
storageinfo | Obtain bucket storage information. |
location | Obtain bucket locations. |
acl | Specify or obtain bucket ACLs or object ACLs. |
policy | Specify, obtain, or delete bucket policies. |
cors | Specify, obtain, or delete bucket CORS configurations. |
versioning | Specify or obtain bucket versioning statuses. |
website | Specify, obtain, or delete bucket website configurations. |
logging | Specify or obtain bucket logging settings. |
lifecycle | Specify, obtain, or delete lifecycle rules of buckets. |
notification | Specify or obtain the notification configurations of buckets. |
tagging | Specify, obtain, or delete bucket tags. |
delete | Batch delete objects. |
versions | List object versions in buckets. |
uploads | List or initiate multipart uploads in buckets. |
restore | Restore Archive objects. |
Returned Result
Field | Type | Description |
|---|---|---|
SignedUrl | String | Signed URL |
ActualSignedRequestHeaders | Object | Actual headers in the request initiated by using the signed URL |
Sample Code
// Generate a signed URL for uploading an object. var putObjectResult = obsClient.createSignedUrlSync({Method : 'PUT', Bucket : 'bucketname', Key : 'objectkey', Headers : {'Content-Type' : 'text/plain'}}); console.log('SignedUrl-->' + putObjectResult['SignedUrl']); console.log('ActualSignedRequestHeaders-->' + JSON.stringify(putObjectResult['ActualSignedRequestHeaders'])); // Generate a signed URL for setting an object ACL. var setObjectAclResult = obsClient.createSignedUrlSync({Method : 'PUT', Bucket : 'bucketname', Key : 'objectkey', SpecialParam: 'acl', Headers: {'x-amz-acl' : 'public-read'}}); console.log('SignedUrl-->' + setObjectAclResult['SignedUrl']); console.log('ActualSignedRequestHeaders-->' + JSON.stringify(setObjectAclResult['ActualSignedRequestHeaders'])); // Generate a signed URL for downloading an object. var getObjectResult = obsClient.createSignedUrlSync({Method : 'GET', Bucket : 'bucketname', Key : 'objectkey'}); console.log('SignedUrl-->' + getObjectResult['SignedUrl']); console.log('ActualSignedRequestHeaders-->' + JSON.stringify(getObjectResult['ActualSignedRequestHeaders'])); // Generate a signed URL for deleting an object. var deleteObjectResult = obsClient.createSignedUrlSync({Method : 'DELETE', Bucket : 'bucketname', Key : 'objectkey'}); console.log('SignedUrl-->' + deleteObjectResult['SignedUrl']); console.log('ActualSignedRequestHeaders-->' + JSON.stringify(deleteObjectResult['ActualSignedRequestHeaders']));
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.

