J'ai le code suivant pour se connecter à un service Web et stocker le jeton d'authentification:Accéder à la variable globale?
loginViewController.h
@interface loginViewController : UIViewController<XMLRPCConnectionDelegate>
@property (strong, nonatomic) IBOutlet UITextField *SSO;
@property (weak, nonatomic) IBOutlet UITextField *PASS;
@property (weak, nonatomic) IBOutlet UITextView *LoginError;
@property (nonatomic, retain) NSString *token;
@end
loginViewcontroller.m
#import "loginViewController.h"
@implementation loginViewController
@synthesize SSO;
@synthesize PASS;
@synthesize LoginError;
@synthesize token;
- (IBAction)coreLoginClicked:(id)sender {
NSURL *URL = [NSURL URLWithString: @"https://somesite"];
XMLRPCRequest *request = [[XMLRPCRequest alloc] initWithURL: URL];
XMLRPCConnectionManager *manager = [XMLRPCConnectionManager sharedManager];
[request setMethod:@"systemLogin" withParameters:[NSArray arrayWithObjects: SSO.text, PASS.text, nil]];
[manager spawnConnectionWithXMLRPCRequest: request delegate: self];
NSLog(@"Request body: %@", [request body]);
}
- (void)request: (XMLRPCRequest *)request didReceiveResponse: (XMLRPCResponse *)response {
if (![response faultCode]) {
token = [response object];
[self performSegueWithIdentifier:@"loginSegue" sender:self];
NSLog(@"Response object: %@", [response object]);
}
J'ai ce code dans mon contrôleur de vue qui apparaît après la connexion réussie:
loginViewController* login = [[loginViewController alloc] init];
NSLog(@"Token: %@", login.token);
La valeur de login.token est nul. Qu'est-ce que je fais mal ici? Est-ce la façon incorrecte de définir et d'accéder à une variable globale?
Je suivais le tutoriel sur Objective-C de lynda.com, et de cette façon comment ils l'ont fait .. mais peut-être que j'ai raté quelque chose.
Merci!
Objective-C n'a pas de variables globales. –
Objective-C est un sous-ensemble strict de ANSI C, et implémente donc des variables globales. Mais la question semble n'avoir rien à voir avec les variables globales. – hotpaw2
@ hotpaw2 C'est un sur-ensemble car il inclut tout ce que C inclut plus les primitives Objective-C. –