Réception de données à partir de l'URL sur l'iPhone?
-
09-09-2019 - |
Question
J'utilise le document d'Apple pour créer un App.I réussi à connexion au serveur, mais je reçois 0 octets du serveur (pas de données de réponse). Je prends les étapes suivantes:
-
Je crée une vue basée sur App et ajouter une propriété 'receivedData':
En ViewController.h:
@property (nonatomic, retain) NSMutableData *receivedData;
En ViewController.m:
@synthesize receivedData;
-
L'action de ViewController.m 'viewDidLoad', j'ajouter:
receivedData = [NSMutableData alloc];
-
Ajouter un bouton dans la vue et ajoutez l'action pour elle:
// create the request NSURLRequest *theRequest=[NSURLRequest requestWithURL:[NSURL URLWithString:@"http://..."] cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0]; // create the connection with the request // and start loading the data NSURLConnection *theConnection=[[NSURLConnection alloc] initWithRequest:theRequest delegate:self]; if (theConnection) { // Create the NSMutableData that will hold // the received data // receivedData is declared as a method instance elsewhere receivedData=[[NSMutableData data] retain]; } else { // inform the user that the download could not be made }
Quand je débogage ces codes, je trouve que receivedData retourne 0 octets. Toutes les idées sur ce qui va mal? Une modify simple mon code sera apprécié.
La solution
Votre code ne crée que la connexion HTTP - les données ne seront écrites et disponibles dans receivedData après les callbacks délégués ont été appelés par le cadre (une fois la réponse HTTP est reçue). Vous pouvez obtenir plus d'informations et des exemples de code de la documentation d'Apple
Autres conseils
La réponse est la même que ce fut la dernière fois que je répondu pour vous, sur Comment puis-je recevoir des données à partir de l'URL sur l'iPhone? . Je poussai un explanation-- détaillée avez-vous lu?