स्विफ्ट में एक जेडब्ल्यूटी पेलोड को डिकोड करने की कोशिश कर रहा है और एक सच में कठिन समयडिकोडिंग JSON वेब टोकन स्विफ्ट में
static func decodePayload(tokenstr: String) {
//splitting JWT to extract payload
let arr = split(tokenstr) {$0 == "."}
//base64 encoded string i want to decode
let base64String = arr[1] as String
println(base64String) //eyJleHAiOjE0MjY4MjIxNjMsImlkIjoiNTUwYjA3NzM4ODk1NjAwZTk5MDAwMDAxIn0
//attempting to convert base64 string to nsdata
let nsdata: NSData = NSData(base64EncodedString: base64String, options: NSDataBase64DecodingOptions(rawValue: 0))
//decoding fails because nsdata unwraps as nil
let base64Decoded: NSString = NSString(data: nsdata!, encoding: NSUTF8StringEncoding)!
}
जहां वास्तव में टोकन सबसे अच्छा अभ्यास के रूप में संग्रहित किया जा जेडब्ल्यूटी चाहिए? मैं सोच रहा हूं कि इसे उपयोगकर्ता नाम और पासवर्ड के साथ कीचेन में संग्रहीत किया जाना चाहिए। – user805981
@ user805981: मैं वास्तव में jwt टोकन के बारे में कुछ भी नहीं जानता। लेकिन हां, पासवर्ड जैसे संवेदनशील डेटा कीचेन में संग्रहीत किया जाना चाहिए। –
धन्यवाद। Keychains के बारे में। प्रति ऐप स्टोर करने में सक्षम कीचेन कितने कीचेन शब्दकोश हैं? क्या यह प्रति ऐप अनंत या एक पासवर्ड कीचेन है? – user805981