我对钥匙串有一个模糊的想法,它用于ios的密码管理。由于没有适当的文件,我来找你帮忙。 任何人都可以澄清getForKey()命令的目的吗?
答案 0 :(得分:2)
在这里,您有一个易于理解的例子。我专注于Get函数并省略了set并删除了回调 - 如果您了解GetSuccess回调则不需要它们。
首先我们将一个名为硬币的密钥设置为 600 ,然后我们检索(获取)该密钥,触发我们的GetSuccess
回调,传递值和应该发出警报。
// init
var kc = new Keychain();
// Set key
kc.setForKey(SetSuccess, failure, 'coins', 'servicename', '600');
// Get key
kc.getForKey(GetSuccess, failure, 'coins', 'servicename');
// Get Success Callback
function GetSuccess(value) {
alert("GET SUCCESS - Coins Value: " + value);
};
// Delete key
kc.removeForKey(RemoveSuccess, failure, 'coins', 'servicename');
[...]
如果您有任何疑问,请询问。
答案 1 :(得分:1)
听起来你正在使用Shazron Abdullah的Keychain Plugin。如果是这样,API非常简单,但文档最初可能会有点混乱。 API依赖于异步回调,因此您需要相应地规划代码。
getForKey
的参数是成功回调,失败回调,密钥名称和服务名称。我提供了我的应用程序的名称作为服务名称。
这是一个可以帮助您入门的小样本(假设已安装该插件):
(function(){
// Create a new keychain object...
var keychain = new window.Keychain();
// Assign the value 'mysecret' to 'mykey'...
keychain.setForKey(function() {
console.log('key set succeeded');
// Retrieve the value for 'mykey' and output to the console...
keychain.getForKey(function(value) {
console.log('key get, value = ' + value);
}, function() {
console.log('key get failed');
}, 'mykey', 'myservice');
}, function() {
console.log('key set failed');
}, 'mykey', 'myservice', 'mysecret');
})();
如果你的应用程序有插件并且在iOS模拟器上运行,你可以打开Safari的调试窗口并粘贴这段代码以进行快速演示。