私のプログラムは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");
}
基本的に私がやろうとしているのは、ソケットを介してクライアントにファイルを送信することです。おそらくここで何かが間違っています。サーバーの残りの部分はかなり長いので、サーバーへのリンクを提供します(変更されています-送信する代わりにsendFileを使用します)。http://beej.us/guide/bgnet/output/html/multipage/clientserver.html#simpleserver
助けてください
ありがとう
アレックス
編集:気にしないでください。問題を解決しました。open(viewController.filePath、O_RDONLY);で[viewController.filePathUTF8String]が必要なようです。