The content module allows storing rich chat attachments, app content, and settings without having to republish them. Using a web interface you or your clients can control and make instant changes to the apps.
Before you begin
- Visit our Key Concepts page to get an overall understanding of the most important QuickBlox concepts.
- Register a QuickBlox account. This is a matter of a few minutes and you will be able to use this account to build your apps.
- Configure QuickBlox SDK for your app. Check out our Setup page for more details.
- Create a user session to be able to use QuickBlox functionality. See our Authentication page to learn how to do it.
Retrieve files
Get a list of files for a current user using the code snippet below.
// these parameters are optional
var params = {
page: 1,
per_page: 10
};
QB.content.list(params, function(error, data) {
// ...
});
// equivalent of the above code
QB.content.list(function(error, data) {
// ...
});
Upload file
Upload a file to the cloud storage using the following code snippet.
var input = document.querySelector("input[type=file]");
var file = input.files[0];
var params = {
name: file.name,
file: file,
type: file.type,
size: file.size,
public: false // optional, "false" by default
};
QB.content.createAndUpload(params, function(error, result) {
if (error) {
console.log(error);
} else {
console.log(result);
var uploadedFile = result;
var uploadedFileId = result.id;
}
});
The maximum size of the uploaded file depends on the membership plan.
Basic | Startup | Growth | HIPAA | Enterprise | |
---|---|---|---|---|---|
File size limit | 10 Mb | 25 Mb | 50Mb | 50Mb |
Update file
You can update a file name using the update()
method.
var params = {
id: 101,
name: "GreatPlace", // new file name
};
QB.content.update(params, function(error, result) {
if (error) {
console.log(error);
} else {
console.log(result);
}
});
Set the following fields of the params
:
Field | Required | Description |
---|---|---|
id | yes | ID of the file. |
name | yes | File name. |
Download file by UID
If the file is public then it's possible to download it without a session token.
QB.content.getFile('file uid', function (error, file) {
// ...
})
Get file info
Get information about a file by ID using the getInfo()
method below. This method allows to load the file description model from the server, not the content of the file itself.
var fileId = 1441441;
QB.content.getInfo(fileId, function(error, result) {
// ...
});
Argument | Required | Description |
---|---|---|
fileId | yes | ID of the file. |
function() | yes | Specifies a callback function that accepts one argument that specifies what error has happened. |
Get file URL
Except for downloading, you can also get URL of each file. There are two types of file URLs that can be obtained: private and public.
- Public URL allows anyone to access the file, no authorization token is needed.
- Private URL can be accessed only by QuickBlox user with a session token.
Get public URL
To receive a public URL, use the code snippet below.
var fileUID = 'file uid';
var fileUrl = QB.content.publicUrl(fileUID);
Get private URL
To get a private URL of the uploaded file, use the following code snippet.
var fileUID = 'file uid';
var fileUrl = QB.content.privateUrl(fileUID);
Delete file
Delete a file by file ID using the delete()
method below.
var fileId = 1441441;
QB.content.delete(fileId, function(error, result) {
// ...
});
Argument | Required | Description |
---|---|---|
fileId | yes | ID of the file. |
function() | yes | Specifies a callback function that accepts one argument that specifies what error has happened. |
Updated 7 days ago
What's Next
Push Notifications |