Моя программа состоит из 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);