Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

XCode, Otentikasi dan NSUserDefaults

Anda cukup dekat dengan pemikiran Anda. Saya menggunakan pendekatan yang sangat mirip dengan proses login pengguna saya.

Saat ini saya garam dan hash email dan kata sandi menjadi 1 40 token char. Jika login kembali berhasil, saya menyimpan token ke NSUserDefaults. Saya menggunakan token ini untuk semua permintaan web lainnya hingga pengguna keluar, dan pada saat itu saya menghapus default pengguna.

Berikut adalah beberapa cuplikan yang saya gunakan untuk proses yang sama:

// see if a login already exists
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
self.token = [defaults stringForKey:@"token"];

// if the token is nil/blank, launch login view
if(self.token == nil || [self.token isEqualToString:@""]) {
    [self loadStartView];
    return;
}

// build the request to update status
[[NSHTTPCookieStorage sharedHTTPCookieStorage] setCookieAcceptPolicy:NSHTTPCookieAcceptPolicyNever];
NSString *stringData = [NSString stringWithFormat:@"<your api string here"];
NSString *requestData = stringData;
NSData *myRequestData = [NSData dataWithBytes: [requestData UTF8String] length: [requestData length]];
NSMutableURLRequest *request = [[NSMutableURLRequest alloc] initWithURL: [NSURL URLWithString:[NSString  stringWithFormat:@"<your url request here>"]]];
[request setHTTPMethod: @"POST"];
[request setHTTPBody: myRequestData];
NSData *jsonData = [NSURLConnection sendSynchronousRequest: request returningResponse: nil error: nil];
NSString *json = [[[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding] autorelease];
NSDictionary *payloadData = [json JSONValue];

[request release];

if([[payloadData objectForKey:@"success"] boolValue]) { // this is designed around my api, but you get the idea
    //NSLog(@"updateStatus: %@", payloadData);
    // updates the api version for every call
    [defaults setObject:self.token forKey:@"token"];
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CakePHP:Membuat baris HABTM baru alih-alih memperbarui yang lain

  2. Karakter Melarikan Diri Seperti $ dan % | MySQL dan PHP

  3. Bagaimana cara memilih catatan yang dikelompokkan hanya jika setiap catatan dalam grup memenuhi kriteria tertentu di MySQL?

  4. Mengapa saya tidak bisa memasukkan ke MySQL?

  5. Sisipkan Query Untuk Menyisipkan Baris di MySQL