As you may already know, WebViews on Android and iOS platforms do not support regular use of document.cookie
for managing the cookies in your app. This plugin allows you to get and set cookie values from your WebView through a simple interface.
- Android
- iOS
Install with Cordova CLI
$ cordova plugin add com.cordova.plugins.cookiemaster
- Added method to get all cookies
- Added method to set multiple cookies
Gets all cookies from a given domain, returns a JSON object with each cookie as an attribute:
{
cookie1: value1,
cookie2: value2
}
cookieMaster.getCookies('http://<some host>:<some port>', function(data) {
console.log(data); //JSON Object
}, function(error) {
if (error) {
console.log('error: ' + error);
}
});
Sets cookies contained in a JSON object with each cookie as an attribute as shown before:
{
cookie1: value1,
cookie2: value2
}
cookieMaster.setCookies('http://<some host>:<some port>', jsonCookies, function() {
console.log('Cookies set');
}, function(error) {
if (error) {
console.log('error: ' + error);
}
});
Gets a string for a specific domain cookie:
cookieMaster.getCookieValue('http://<some host>:<some port>', '<cookie name>', function(data) {
console.log(data.cookieValue);
}, function(error) {
if (error) {
console.log('error: ' + error);
}
});
cookieMaster.setCookieValue('http://<some host>:<some port>', '<cookie name>', '<cookie value>',
function() {
console.log('A cookie has been set');
},
function(error) {
console.log('Error setting cookie: '+error);
});
The cookie value should be formatted just like a regular document.cookie
value.
cookieMaster.clearCookies(
function() {
console.log('Cookies have been cleared');
},
function() {
console.log('Cookies could not be cleared');
});
- This version has been tested on Android 4.4 ~ 5.1 devices, iOS 7.1 ~ 9 devices. Experience may vary for different OS versions.
This plugin is distributed under the MIT License.
This plugin was inspired by the great work on the CookieMonster plugin by @barrettc