本例中服务器返回的是base64 字符串,也可以直接返回byte[],看server接口的定义
拿到nsData以后,把pdf写到device
使用webview显示PDF
let nsData = NSData(base64Encoded: data!!)
拿到nsData以后,把pdf写到device
let theData = ServiceProxy().CallGetPayslipFile(recordId: payslip.recordId)//"204586" var docURL = (FileManager.default.urls(for: .documentDirectory,in: .userDomainMask)).last as NSURL? docURL = docURL?.appendingPathComponent( "myPayslip.pdf")! as NSURL? //Lastly,write your file to the disk. theData.write(to: docURL! as URL,atomically: true)
使用webview显示PDF
func loadPDF(filename: String) { let documentsPath = NSSearchPathForDirectoriesInDomains(.documentDirectory,.userDomainMask,true)[0] let filePath = "\(documentsPath)/\(filename)" let url = NSURL(fileURLWithPath: filePath) let urlRequest = NSURLRequest(url: url as URL) webView.loadRequest(urlRequest as URLRequest) }