Mon programme se compose de 2 parties - Un socket serveur (se trouve sur le port 3490) fonctionnant sur un thread différent, et un client pour tester le serveur. Maintenant, le serveur a un fichier pdf, et je veux que le client l'affiche dans un UIWebView. Pour ce faire je le folllowing:iphone sdk/mac - Encore un autre problème avec les sockets
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://127.0.0.1:3490/"]];
[webView loadRequest:urlRequest];
Le problème est que lorsqu'un message de serveur sa demande que je reçois dans la console: incapable d'ouvrir « »: Aucun fichier ou répertoire
En le serveur la partie la plus importante du code est:
int fileDesc = open(viewController.filePath, O_RDONLY);
if (fileDesc == -1) {
fprintf(stderr, "unable to open '%s': %s\n", viewController.filePath, strerror(errno));
exit(1);
}
off_t offset = 0;
off_t len = 0;
struct sf_hdtr headers;
headers.headers = NULL;
headers.trailers = NULL;
if (sendfile (fileDesc, new_fd, offset, &len, &headers, 0) == -1){
perror("send");
}
en fait ce que je suis en train de faire est d'envoyer le fichier via la prise au client. Probablement quelque chose ne va pas ici. Le reste du serveur est assez long donc je vais juste lui fournir le lien (c'est modifié - au lieu d'envoyer j'utilise sendFile). http://beej.us/guide/bgnet/output/html/multipage/clientserver.html#simpleserver
S'il vous plaît aider
Merci
Alex
EDIT: Passons. J'ai résolu le problème. il semble que [viewController.filePath UTF8String] soit nécessaire en open (viewController.filePath, O_RDONLY);
Il n'y a évidemment pas de filePath. Quel filePath vous attendiez-vous? – extraneon
Nevermind! Le problème est avec viewController.filePath il doit être [viewController.filePath UTF8String]; Vous pouvez fermer ce fil – Alex1987
Mettez cela comme une réponse et acceptez-vous. – kennytm