簡體   English   中英

在iOS中注銷時刪除Cookie

[英]Removing cookies while logout in ios

我正在開發iOS應用程序的登錄模塊。 使用某些用戶名和密碼登錄時,我得到的用戶配置文件為響應,狀態為登錄成功。 那時我將登錄狀態保存在NSUserDefaults中。

單擊注銷按鈕后,我在NSUserDefaults登錄狀態設置為false。 但是再次登錄另一個登錄ID,我得到的響應是“已經登錄”。 我必須刪除iOS中的所有cookie嗎? 這是我的示例代碼

@IBAction func Login(sender: AnyObject) {

    var mode:NSString = "signin"
    var useremail:NSString = "bbbbbb@ffffff.net"
    //var usermobile:NSString = txtEmail.text
    var pwd:NSString = "123456"//"kKAOWX33zUDlcUpptZOoQA%3D%3D"
    var decrypt:Int = 0//1

    var postString = "http://myaccount.ddddddddd.com/network/sdasdasdasdsh.aspx?"

    var postData = NSString(format:"mode=signin&useremail=%@&pwd=%@&userauth=PPZGySCKmspQ56iALuPpvw==&Decrypt=%d&App=1",useremail,pwd,decrypt)
    var dataExample : NSData = NSData()

    dataExample = postData.dataUsingEncoding(NSUTF8StringEncoding)!

    var postRequest:NSMutableURLRequest = NSMutableURLRequest(URL: NSURL(string: postString)!)

    postRequest.HTTPMethod = "POST"
    postRequest.HTTPBody = dataExample

    NSURLConnection.sendAsynchronousRequest(postRequest, queue: NSOperationQueue .mainQueue()){ (response : NSURLResponse!, data : NSData!, error : NSError!) -> Void in

        if data != nil && data.length != 0
        {
            println()
            var asyncError = NSError?()
            print(asyncError)

            var strin:NSString = NSString(bytes: data.bytes, length: data.length, encoding: NSUTF8StringEncoding)!

            var jsonValue: NSDictionary? = NSJSONSerialization.JSONObjectWithData(data, options:NSJSONReadingOptions(), error: nil) as? NSDictionary
            NSLog("Result %@",jsonValue!)
            self.loginButton.setTitle("Logout", forState: UIControlState())


        }

}

請幫我解決這個問題。

我想我明白了....

 if status == true{

        NSUserDefaults.standardUserDefaults().setBool(false, forKey: "LoginStatus")

        var mode:NSString = "signin"
        var useremail:NSString = "xxxxx@yyyyy.net"
             ................................
       blah blah blah  go to the end line now 

            var jsonValue: NSDictionary? = NSJSONSerialization.JSONObjectWithData(data, options:NSJSONReadingOptions(), error: nil) as? NSDictionary
            NSLog("Result %@",jsonValue!)
            self.loginButton.setTitle("Logout", forState: UIControlState())
            NSUserDefaults.standardUserDefaults().setBool(true, forKey: "LoginStatus") 

////在這里,您正在設置LoginStatus的bool值,無論使用哪種方式,它始終保持登錄狀態}

對於NSUserDefaults,在將變量設置為True或False后,可隨時在設置后在下面的行中寫入。

[[NSUserDefaults standardUserDefaults] synchronize];

因為NSUserDefaults每次都需要與應用程序同步。

最后我得到以下答案

 postRequest.HTTPShouldHandleCookies = false

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM