NSData 객체가 있고 WebView에 표시하려고합니다. WebView는 NSData
개체를 처리/표시 할 수 있습니까?NSView를 WebView에로드하기
NSData *data = ... // some data I've gotten from NSURLConnection
WebView *webView = ... [[WebView alloc] init];
NSData 객체가 있고 WebView에 표시하려고합니다. WebView는 NSData
개체를 처리/표시 할 수 있습니까?NSView를 WebView에로드하기
NSData *data = ... // some data I've gotten from NSURLConnection
WebView *webView = ... [[WebView alloc] init];
Content-Type 헤더가 없으면 웹보기에서 데이터를 해석하는 방법을 알 수 없습니다. 이것이 Content-Type 헤더가 추가 된 이유입니다.
언제든지 재생할 수있는 네트워크 트래픽을 NSData
캡처하려는 경우 사용자 지정 NSURLProtocol
을 작성하는 것이 좋습니다. http
에 대한 핸들러를 작성하면 내장 된 핸들러를 대체합니다. 그것을 통해 추월 메모리를주고 실제 요청으로 리디렉션 할 수 있습니다.
이
NSString* newStr = [[NSString alloc] initWithData:theData encoding:NSUTF8StringEncoding];
[self.webView loadHTMLString: newStr baseURL:nil];
데이터가 HTML이 아니 어서 UTF-8이 아닐 수도 있지만 문제는 없다고 생각합니다. – Tommy
예처럼 해! NSData는 MIME 형식이 제대로 제공되면 UIWebView에서 처리됩니다. 이 코드 조각은 WebView에서 .docx 파일을로드합니다.
NSString *path = [urlFileInView path];
NSData *data = [[NSFileManager defaultManager] contentsAtPath:path];
webViewForDocsView.delegate = self;
[webViewForDocsView loadData:data MIMEType:@"application/vnd.openxmlformats-officedocument.wordprocessingml.document" textEncodingName:@"UTF-8" baseURL:nil];
죄송 합니다만, 저는'UIWebView'가 아닌'WebView'를 사용하고 있습니다. –
NSData는 무엇을 설명합니까? UTF-8 텍스트? PNG? 다른 것? – Tommy
변수가 있습니다. 사용자가 URL을 입력하도록 허용하고 NSData 객체에 NSData 객체를 다운로드 한 다음 요청의 응답 헤더가 무엇인지에 따라 표시하려고합니다. –
커스텀 데이터 포맷을 만들지 않았다면, NSData는 더 이상 요청 헤더를 가지고 있지 않습니다. 그것은 단지 몸입니다. 뷰에 대한 URL을 직접 지정하십시오. – Tommy