iphone SDK / Mac - еще одна проблема с сокетами - PullRequest
0 голосов
/ 16 февраля 2010

Моя программа состоит из 2 частей - сокета сервера (расположен на порте 3490), работающего в другом потоке, и клиента для тестирования сервера. Теперь на сервере есть файл PDF, и я хочу, чтобы клиент отображал его в UIWebView. Для этого я использовал следующее:

    NSURLRequest *urlRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://127.0.0.1:3490/"]];
[webView loadRequest:urlRequest];

Проблема в том, что когда сервер отправляет свой запрос, я получаю в консоли: невозможно открыть '': нет такого файла или каталога

На сервере наиболее важной частью кода является:

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");
            }

По сути, я пытаюсь отправить файл через сокет клиенту. Возможно, что-то здесь не так. Остальная часть сервера довольно длинная, поэтому я просто предоставлю ссылку на нее (она модифицирована - вместо send я использую sendFile). http://beej.us/guide/bgnet/output/html/multipage/clientserver.html#simpleserver

Пожалуйста, помогите

Спасибо

Alex

РЕДАКТИРОВАТЬ: Неважно. Я решил проблему. кажется, что [viewController.filePath UTF8String] необходимо в открытом (viewController.filePath, O_RDONLY);

1 Ответ

0 голосов
/ 17 февраля 2010

Nevermind. Я решил проблему. кажется, что [viewController.filePath UTF8String] необходимо в открытом (viewController.filePath, O_RDONLY);

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...