mercredi 6 mai 2015

Get data after request is done

In my case, the main problem is that I can't get data after the user registered.

In my windows phone app i used to get data by firing event LoadCompleted.

This code shows how I've done it before:

private void AuthBrowser_LoadCompleted(object sender, NavigationEventArgs e)
    {
        string responceData = e.Uri.OriginalString;
        if (responceData.Contains("access_token"))
        {
            if (settings.Contains("IsRegistered"))
            {
                settings["IsRegistered"] = true;
            }
            else
            {
                settings.Add("IsRegistered", true);
            }
            var parameters = responceData.Split('#')[1].Split('&');
            var accessToken = parameters[0].Substring(parameters[0].IndexOf("=", StringComparison.Ordinal)).Remove(0, 1);
            if (settings.Contains("AccessToken"))
            {
                settings["AccessToken"] = accessToken;
            }
            else
            {
                settings.Add("AccessToken", accessToken);
            }
            var expiresIn = parameters[1].Substring(parameters[1].IndexOf("=", StringComparison.Ordinal)).Remove(0, 1);
            var uID = parameters[2].Substring(parameters[2].IndexOf("=", StringComparison.Ordinal)).Remove(0, 1);
            if (settings.Contains("UserId"))
            {
                settings["UserId"] = uID;
            }
            else
            {
                settings.Add("UserId", uID);
            }
            if (settings.Contains("IsRegistered"))
            {
                settings["IsRegistered"] = true;
            }
            else
            {
                settings.Add("IsRegistered", true);
            }
            NavigationService.Navigate(new Uri("/Menu.xaml", UriKind.Relative));
        }
    }

But now in my IOS app I don't understand how to do this.

I've used WKWebView.

This is my code sample:

import UIKit
import WebKit

class ViewController: UIViewController {

    @IBOutlet var containerView : UIView! = nil
    var webView: WKWebView?
    var uiWebView: UIWebView?
    override func loadView() {
        super.loadView()
        self.uiWebView = UIWebView()
        self.webView = WKWebView()
        self.view = self.webView!

    }

    override func viewDidLoad() {
        super.viewDidLoad()

        var url = NSURL(string:"http://ift.tt/1Jra8XG;" +
            "redirect_uri=http://ift.tt/1Jra8XI")
        var req = NSURLRequest(URL:url!)

        self.webView!.loadRequest(req)

    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }

}

Thanks.

Aucun commentaire:

Enregistrer un commentaire