|
|
(8 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
| appStorage.clear(''callback'')<br>
| |
| appStorage.getItem(''key'', ''callback'')<br> | | appStorage.getItem(''key'', ''callback'')<br> |
| appStorage.getAllItems(''key'', ''callback'')<br> | | appStorage.getAllItems(''key'', ''callback'')<br> |
| appStorage.removeItem(''key'', ''callback'')<br>
| |
| appStorage.setItem(''key'', ''value'', ''callback'')
| |
|
| |
|
| == Description == | | == Description == |
|
| |
|
| appStorage allows you to save data in ''key'', ''value'' pairs on the server so it is available next time you run the program. An entry can be created by assigning to appStorage.setItem(''variableName'', ''value''), where ''variableName'' is chosen by you. Data is retrieved a similar way. | | appStorage allows you to get data in ''key'', ''value'' pairs from the server. Data is maintained in the [https://dashboard.voltcloud.io/ VoltServer Dashboard]. This is useful for data you want to share with all users of your app: announcements, shared tables which change from time to time, dates or even code. |
|
| |
|
| ''value'' can be a string, number, array or object. There is no size limit on ''value'', other than it be reasonable. | | The ''value'' returned is a string. There is no size limit on ''value'', other than it be reasonable. |
|
| |
|
| This feature is only available if your app is hosted on Volt. If your app does not have a live internet connection, the request will time out and an error message will be passed to ''callback''. | | This feature is only available if your app is hosted on VoltServer. |
| | |
| | If your app does not have a live internet connection, the request will time out and an error message will be passed to ''callback''. |
|
| |
|
| Since the calls access information on a server, they are asynchronous (so your app does not look up while the call is being processed). When the call is complete, the function named in ''callback'' is called in your app. It passes two parameters: (''error'', ''data''). If the call is successful, ''error'' is empty and your results are in ''data''. If the call is unsuccessful, ''error'' is not empty and the error message is in ''data''.message. | | Since the calls access information on a server, they are asynchronous (so your app does not look up while the call is being processed). When the call is complete, the function named in ''callback'' is called in your app. It passes two parameters: (''error'', ''data''). If the call is successful, ''error'' is empty and your results are in ''data''. If the call is unsuccessful, ''error'' is not empty and the error message is in ''data''.message. |
|
| |
|
| appStorage is an alias for $volt.user.storage. | | appStorage is an alias for $volt.storage in the [https://docs.voltcloud.io/api/ VoltServer API]. |
|
| |
|
| == Properties and Methods == | | == Properties and Methods == |
Line 21: |
Line 20: |
| {| class="wikitable" | | {| class="wikitable" |
| |- | | |- |
| | clear(''callback'') || Clear all entries for the app. | | | clear(''callback'') || Clear all entries for the app. Dashboard only. |
| |-
| |
| | removeItem(''key'', ''callback'') || Deletes item ''key''.
| |
| |- | | |- |
| | getItem(''key'', ''callback'') || Get the item which is saved under ''key''. String. | | | getItem(''key'', ''callback'') || Get the item which is saved under ''key''. String. |
Line 29: |
Line 26: |
| | getAllItems(''callback'') || Gets all the items for the app, as an array. Each element is a key,value pair. | | | getAllItems(''callback'') || Gets all the items for the app, as an array. Each element is a key,value pair. |
| |- | | |- |
| | setItem(''key'', ''value'', ''callback'') || Sets item ''key'' to ''value''. Creates item if it does not exist. | | | removeItem(''key'', ''callback'') || Deletes item ''key''. Dashboard only. |
| | |- |
| | | setItem(''key'', ''value'', ''callback'') || Sets item ''key'' to ''value''. Creates item if it does not exist. Dashboard only. |
| |} | | |} |
|
| |
|
| == Example - BASIC == | | <tabber> |
| | | JavaScript= |
| <pre> | | <syntaxhighlight lang="JavaScript"> |
| Function butClear_onclick()
| | butGetAllItemsApp.onclick = function() { |
| appStorage.clear(done)
| | appStorage.getAllItems(getAllItemsCallback); |
| End Function
| | }; |
| | |
| Function butGetAllItems_onclick()
| |
| appStorage.getAllItems(getAllItemsCallback)
| |
| End Function
| |
| | |
| Function butGetItem_onclick()
| |
| appStorage.getItem("SimpleString", getItemCallback)
| |
| End Function
| |
|
| |
|
| Function butRemoveItem_onclick()
| | butGetItemApp.onclick = function() { |
| appStorage.removeItem("SimpleString", done)
| | appStorage.getItem("SimpleString", getItemCallback); |
| End Function
| | }; |
| | |
| Function butSetItem_onclick()
| |
| appStorage.setItem("SimpleString", "ABCD", done)
| |
| appStorage.setItem("Number", 123, done)
| |
| appStorage.setItem("Array", [1, 2, 3, 4], done)
| |
| appStorage.setItem("Object", {firstName: "Eric", lastName: "Cartman"}, done)
| |
| End Function
| |
| | |
| Function done(error, data)
| |
| If error Then
| |
| If data = undefined Then data = {message: "Network Error"}
| |
| MsgBox data.message
| |
| Else
| |
| console.log("success")
| |
| End If
| |
| End Function
| |
| | |
| Function getAllItemsCallback(error, data)
| |
| If error Then
| |
| If data = undefined Then data = {message: "Network Error"}
| |
| MsgBox data.message
| |
| Else
| |
| Print False
| |
| For Each key in data
| |
| console.log(key, data[key])
| |
| k = [key, key][0]
| |
| Print k & ": " & data[key].toString()
| |
| Next
| |
| End If
| |
| End Function
| |
| | |
| Function getItemCallback(error, data)
| |
| If error Then
| |
| If data = undefined Then data = {message: "Network Error"}
| |
| MsgBox data.message
| |
| Else
| |
| MsgBox data
| |
| End If
| |
| End Function
| |
| </pre>
| |
| | |
| == Example - JavaScript ==
| |
| <pre>
| |
| butClear.onclick = function() {
| |
| appStorage.clear(done);
| |
| };
| |
| | |
| butGetAllItems.onclick = function() {
| |
| appStorage.getAllItems(getAllItemsCallback);
| |
| };
| |
| | |
| butGetItem.onclick = function() {
| |
| appStorage.getItem("SimpleString", getItemCallback);
| |
| }; | |
| | |
| butRemoveItem.onclick = function() {
| |
| appStorage.removeItem("SimpleString", done);
| |
| };
| |
| | |
| butSetItem.onclick = function() {
| |
| appStorage.setItem("SimpleString", "ABCD", done);
| |
| appStorage.setItem("Number", 123, done);
| |
| appStorage.setItem("Array", [1, 2, 3, 4], done);
| |
| appStorage.setItem("Object", {
| |
| firstName: "Eric",
| |
| lastName: "Cartman"
| |
| }, done);
| |
| };
| |
| | |
| function done(error, data) {
| |
| if (error) {
| |
| if (data == undefined) {
| |
| data = {
| |
| message: "Network Error"
| |
| };
| |
| }
| |
| NSB.MsgBox(data.message);
| |
| } else {
| |
| console.log("success");
| |
| }
| |
| }
| |
|
| |
|
| function getAllItemsCallback(error, data) { | | function getAllItemsCallback(error, data) { |
Line 161: |
Line 71: |
| NSB.MsgBox(data); | | NSB.MsgBox(data); |
| } | | } |
| } | | }</syntaxhighlight> |
| </pre> | | |-| |
| | BASIC= |
| | <syntaxhighlight lang="vb.net"> |
| | Function butGetAllItemsApp_onclick() |
| | appStorage.getAllItems(getAllItemsCallback) |
| | End Function |
| | |
| | Function butGetItemApp_onclick() |
| | appStorage.getItem("SimpleString", getItemCallback) |
| | End Function |
| | |
| | Function getAllItemsCallback(error, data) |
| | If error Then |
| | If data = undefined Then data = {message: "Network Error"} |
| | MsgBox data.message |
| | Else |
| | Print False |
| | For Each key in data |
| | console.log(key, data[key]) |
| | k = [key, key][0] |
| | Print k & ": " & data[key].toString() |
| | Next |
| | End If |
| | End Function |
| | |
| | Function getItemCallback(error, data) |
| | If error Then |
| | If data = undefined Then data = {message: "Network Error"} |
| | MsgBox data.message |
| | Else |
| | MsgBox data |
| | End If |
| | End Function |
| | </syntaxhighlight> |
| | </tabber> |
|
| |
|
| == Output == | | == Output == |
appStorage.getItem(key, callback)
appStorage.getAllItems(key, callback)
Description
appStorage allows you to get data in key, value pairs from the server. Data is maintained in the VoltServer Dashboard. This is useful for data you want to share with all users of your app: announcements, shared tables which change from time to time, dates or even code.
The value returned is a string. There is no size limit on value, other than it be reasonable.
This feature is only available if your app is hosted on VoltServer.
If your app does not have a live internet connection, the request will time out and an error message will be passed to callback.
Since the calls access information on a server, they are asynchronous (so your app does not look up while the call is being processed). When the call is complete, the function named in callback is called in your app. It passes two parameters: (error, data). If the call is successful, error is empty and your results are in data. If the call is unsuccessful, error is not empty and the error message is in data.message.
appStorage is an alias for $volt.storage in the VoltServer API.
Properties and Methods
clear(callback) |
Clear all entries for the app. Dashboard only.
|
getItem(key, callback) |
Get the item which is saved under key. String.
|
getAllItems(callback) |
Gets all the items for the app, as an array. Each element is a key,value pair.
|
removeItem(key, callback) |
Deletes item key. Dashboard only.
|
setItem(key, value, callback) |
Sets item key to value. Creates item if it does not exist. Dashboard only.
|
butGetAllItemsApp.onclick = function() {
appStorage.getAllItems(getAllItemsCallback);
};
butGetItemApp.onclick = function() {
appStorage.getItem("SimpleString", getItemCallback);
};
function getAllItemsCallback(error, data) {
if (error) {
if (data == undefined) {
data = {
message: "Network Error"
};
}
NSB.MsgBox(data.message);
} else {
NSB.Print((false) + "<br>");
for (key in data) {
console.log(key, data[key]);
k = [key, key][0];
NSB.Print(((k) + (": ") + (data[key].toString())) + "<br>");
}
}
}
function getItemCallback(error, data) {
if (error) {
if (data == undefined) {
data = {
message: "Network Error"
};
}
NSB.MsgBox(data.message);
} else {
NSB.MsgBox(data);
}
}
Function butGetAllItemsApp_onclick()
appStorage.getAllItems(getAllItemsCallback)
End Function
Function butGetItemApp_onclick()
appStorage.getItem("SimpleString", getItemCallback)
End Function
Function getAllItemsCallback(error, data)
If error Then
If data = undefined Then data = {message: "Network Error"}
MsgBox data.message
Else
Print False
For Each key in data
console.log(key, data[key])
k = [key, key][0]
Print k & ": " & data[key].toString()
Next
End If
End Function
Function getItemCallback(error, data)
If error Then
If data = undefined Then data = {message: "Network Error"}
MsgBox data.message
Else
MsgBox data
End If
End Function
Output
(see appStorage sample)
Related Items
LocalStorage, SessionStorage, ServerStorage, SQL