iOS 关于webview 加载路径乱码

uniapp微信小程序使用webview嵌套h5的文件下载问题 公司有个小程序项目,就是单纯的小程序中使用web-view嵌套h5的项目。但是在文件下载的时候,安卓手机点击没反应,ios能打开文件但是都是乱码。 在网上也找了很久,后来确定了一种思路,通过判断当前的宿主环境来进行不同的操作,然后在h5中跳转到小程序的特定页面,并且将文件资源的URL传递过去。之后在小程序中调用微信的下载文件或者保存文件API。 总体思路就是这样,上代码。 h5端代码 // 判断所在环境 var ua = window.navigator.userAgent.toLowerCase 阅读详情

今天工作时候,要到个小问题。后台给了我一个url,我需要用webview展示出来。问题展现我就直接上图了。

我把url在浏览器中打开一下(到时候显示手机也是这种效果就对了)

结果我在webview上展示的是这样:


很明显是乱码,我也很快定位问题,编码问题,我使用的方法是这个:

- (void)loadRequest:(NSURLRequest *)request;


显然,整个过程并没有涉及到编码的东西;我就怀疑后台的编码不是utf-8,结果杯具了,安卓兄弟 没问题

于是,我找到了另一种方法:

- (void)loadData:(NSData *)data MIMEType:(NSString *)MIMEType textEncodingName:(NSString *)textEncodingName baseURL:(NSURL *)baseURL;

这个方法成功解决了我遇到的问题!!!

那我就每个参数都说明一下把,希望以后能帮助到别人;

data:

  NSString *urlString = [NSStringstringWithFormat:@"http://192.168.0.24:8080/ypshopbase/product/todetails.action?prize_id=1"];

    NSURL *url = [NSURLURLWithString:urlString];

    NSData *data = [NSDatadataWithContentsOfURL:url];

就是将url转换成data,不用多说了


MIMEType:

这个参数很重要,是你要加载的类型,因为我加载的是html,参数text/html,如果是其他类型的文件,doc啊,txt啊 百度一大坨 我就不说了

extEncodingName:

这个就是编码格式了,utf-8 根据自己情况改吧

baseURL:

这个参数同样重要,我在.h头文件中,并没有对这个做解释,所以刚开始给了个nil,结果杯具,看图:

杯具就在我的样式呢,一般的懂一些html 都知道 应该有一些css等外部文件,现在样式没了 就和css有关系

那么baseURL发挥作用了,baseURL这里传入,你请求的url,那么苹果就会去自己从路径中找到css等样式 结果可想而知 不再乱码 样式也有了

到此结束,希望可以帮助遇到此问题的朋友,如需转载请注明出处!

有问题可以留言,看到了会得就回答哈!

【IOS】PDF开发集成大全 写这篇笔记的原因是之前的老项目遇到了一个问题:iOS9后PDF中文会显示乱码,而且试了各种方法都不行,还好最终找到了解决方法---MuPDF 所以在此总结一下解决该问题过程中使用过的方法: 1.使用UIWebView加载 //代码很简单 UIWebView *webView = [[UIWebView alloc] initWithFrame:self.view.bounds]; 阅读详情

相关推荐

webview与javascript交互,并解决编码问题

webview与javascript交互, oc 调用 javascipt 中的 函数 获取网页信息,也可截取 网页的某个动作 来做自己的处理 。并解决 过程中 因中文 遇到的 编码问题。

WEBVIEW 加载html(防止乱码)

在我们的项目中,有一个地方需要加载一段从服务器返回的html格式字符串

Micheal_Yang's Blog 1289

四个常见html网页乱码问题及解决办法

上周同事在做网页时,遇到网页打开之后都是乱码,同事很迷茫了,不知道该怎么解决,下面是小编抽时间把比较常见的html网页乱码问题及解决办法整理分享给大家。 其实导致网页乱码主要有几个原因,以下给出解决方法。 1、HTML的字符编码问题 该问题较常见,也是最明显和最容易解决的。 在网页<head>中加上: <meta http-equiv="Content-Type" Content="text/html;charset=utf8"/> 即可。 2、PHP的字符编码问题 这与上面类似。 在文件上方加上: header("Content-type:text/html;chars

ios html 编码转换,iOS webview 加载html 乱码 需要UTF8转码

之前是:[self.webViewloadRequest:[NSURLRequestrequestWithURL:[NSURLURLWithString:@“https://XXXXXXX.html”]]];发现都是乱码。后来改成:NSString* htmlstr = [[NSStringalloc]initWithContentsOfURL:[NSURLURLWithString:@"http...

weixin_30175731的博客 401

软件缺陷(定义+表现形式+优先级+信息+产生原因),看完这篇文章就懂了

软件缺陷软件缺陷的定义软件缺陷的表现形式软件缺陷产生的原因软件缺陷的根源软件缺陷的费用软件缺陷的信息 软件缺陷的定义 IEEE 1983 of IEEE Stardard 729中软件缺陷做了一个标准的定义: 从产品内部看,软件缺陷是软件产品开发或维护过程中所存在的错误、毛病等各种问题;从外部看,软件缺陷是系统所需要实现的某种功能的失效或违背。 因此软件缺陷就是软件产品中所存在的问题,最终表现为用户所需要的功能没有完全实现,没有满足用户的需求。 缺陷不是bug,缺陷包含bug,缺陷的范围更大。 软件缺陷

qq_40676418的博客 1万+

Java实现双色球&大乐透随机选号算法——原理详解与代码实战

掌握核心语法:集合操作、随机数生成、排序。贴近实际场景:将编程知识应用于生活问题的解决。

wangchl0932的博客 4974

uniapp 微信小程序webview 踩坑

微信小程序的存在许多功能上的限制和约束,有些情况不得不去使用webview进行开发实现需求,比如原生无法满足(例如某团队维护SDK 只提供了WEB端jsSDK,且不维护小程序SDK)H5可以同时适用多端(适用范围更广)H5可以弥补小程序部分欠缺微信生态有部分限制(包大小,设计规范等)由于最近做的需求小程序不支持播放带有透明通道的视频,所以转到了webview这里总结下完整的开发流程和现有的各种解决方案: 开发阶段需要将不校验合法域名勾选上。

Raccon_的博客 8838

本地服务器搭建Uptime Kuma网站监控服务

本文主要介绍如何在Linux系统中一键部署Uptime Kuma运维监控服务,并将这个服务映射至公网实现随时随地远程访问。如果您像我一样在服务器上托管了多个网站,并且没有足够的时间来手动检查每个网站的在线状态,那么当出现问题时,您可能无法及时收到通知来处理这些问题。因此,搭建一个在线监控服务是很有必要的,它可以在状态异常时提醒您,以便您能够及时处理问题,确保网站的稳定性和可用性。监控服务有很多,我最终选择了Uptime Kuma,因为Uptime Kuma是开源免费的,

Tiam_cr的博客 1822

iOS webView展示部分docx出现乱码解决方案

项目中遇到预览docx和pdf要求: 在开发过程中webView支持预览pdf和docx,so直接使用webView,但在后期测试阶段发现部分docx预览时为乱码现象, 查找方案发现编码utf-8以及GBK等都无法解决乱码问题。 后发现如下方案能做修改: content-type 用于定义用户的浏览器或相关设备如何显示将要加载的数据,或者如何处理将要加载的数据,

xinkongqiSHF的博客 3474

DDR4 IP的用户接口

DDR4 IP核用户接口

bowen_wener的博客 1925

ResNet理论基础与具体实现(详细教程)

论文地址:Deep Residual Learning for Image Recognition ​ Identity Mappings in Deep Residual Networks pytroch源码地址:resnet 0x00 前言 ResNet是2015年就提出的网络结构,中文名字叫作深度残差网络,主要作用是图像分类。现在在图像分割、目标检测等领域都有很...

coordinate的博客 8331

ios html中文显示乱码,ios webview加载本地网页并解决乱码问题

例如 NSString *htmlpath = [[[NSBundle mainBundle]resourcePath]stringByAppendingPathComponent@"xx.html"];NSString *htmlstring = [NSString stringWithContentsOfFile:htmlpath];[webview loadHTMLString:htmlst...

weixin_35833704的博客 993

【实战解析】RTL8306MB交换芯片驱动开发中的RMII接口调试陷阱

本文通过一个RTL8306MB交换芯片驱动开发的实战案例,深入剖析了RMII接口调试中的经典陷阱。文章详细描述了因TX_EN与CRS_DV信号线交叉连接错误导致的“静默”故障,并分享了使用逻辑分析仪和示波器进行硬件排查的完整流程与核心技巧,为嵌入式网络驱动开发提供了宝贵的避坑指南。

weixin_29267307的博客 421

webView各种显示html、网页

一、读取本地html文件----test.html //方法一: //用loadrequest读取本地.html文件 NSString *path=[[NSBundle mainBundle]pathForResource:@"test" ofType:@"html"]; NSURLRequest *request=[NSURLRequest request

快乐驿站 1796

LVGL v8学习笔记 | 09 - 进度条控件的使用方法(bar)

lv_bar_set_range必须放在lv_bar_set_mode前面,否则不生效。bar对象的API在lv_bar.h中声明,以lv_bar_xxx命名。此事件可以用来在进度条更新值之后更新别的控件(比如进度条旁边的文字)。可以看到,默认创建的进度条值是0到100。(3)设置进度条的范围值(最大值和最小值)(2)获取进度条的起始值。(3)获取进度条的最小值。(4)获取进度条的最大值。(1)设置进度条的当前值。(2)设置进度条的起始值。(1)获取进度条当前值。(5)获取进度条的模式。

Mculover666的博客(嵌入式) 1729

基于Playwright和反爬虫规避技术的雪球股票讨论数据采集方案

随着量化投资和社交投资的兴起,雪球作为中国领先的投资社交平台,其用户讨论数据成为研究市场情绪的重要来源。本文将详细介绍如何使用最新的Playwright技术和反爬虫规避策略,构建一个高效、稳定的雪球股票讨论爬虫系统。本文详细介绍了基于Playwright的雪球股票讨论爬虫实现方案,涵盖了从基础配置到高级反爬虫策略的各个方面。AI驱动的反爬虫对抗更智能的请求调度算法区块链技术在数据溯源中的应用联邦学习在数据采集中的运用。

2201_76125261的博客 1008

ios webview加载本地网页并解决乱码问题

例如 NSString *htmlpath = [[[NSBundle mainBundle]resourcePath]stringByAppendingPathComponent@"xx.html"]; NSString *htmlstring = [NSString stringWithContentsOfFile:htmlpath]; [webview loadHTMLString:ht

5940

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

webview ios加载图片不显示

在开发项目中加载html片断,发现在图片不显示,但在安卓机上是显示的,为啥不显示,看了下html代码中的图片,是没有协议,以//开始。这。。。我要写个函数把所有图片找出来再批上https?是不是太傻了...

Wangxinlei_King的博客 2947

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

ios WebView 打开txt文件乱码问题

UIWebView *web = [[UIWebView alloc]initWithFrame:CGRectMake(0, 0,WIDTH , HEIGHT)]; web.backgroundColor = [UIColor clearColor]; web.scalesPageToFit = YES; web.scrollView.delega...

ZhaiAlan的博客 2775

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

使用WebView.load(data, text/html, utf-8)加载显示乱码问题分析

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33834075的博客 1071

加载pdf_iOS加载PDF文件

本文主要介绍一下iOS加载PDF的方法。使用webView加载使用webView加载是最简单的方式,这是最大的优点,使用方便,并且可以加在网络文件,缺点就是效果体验不怎么好,单一的上下滑动效果。注意:UIWebview组件已经在今年被apple禁用,使用webView无法提交App Store,本文下面使用的都是基于WKWebView。首先看一下 webView加载的方法,- (nullable ...

weixin_35715474的博客 646

webview 与 js交互

本来在看cocos2d,今天分了一个和 js有关的活,查了和测试些资料整理下 源码下载:http://download.youkuaiyun.com/detail/worn_nest/4845878 嘿,挣点分好下别人的 1.test.js function sendCommand(cmd,param){ var url="testapp:"+cmd+":"+param;

5654

大麦网抢票脚本完整指南:5 步让脚本替你冲

手动抢票,按钮一敲就提示"系统繁忙",页面加载完票也没了。Automatic_ticket_purchase(大麦网抢票脚本)把登录、票况轮询与下单全部自动完成,整条链路交给脚本执行,这里带你把它跑起来。 ## 定位速览:它替你干了什么,比手动快在哪 一句话说清:这是面向大麦网 PC 网页版的自动购票工具,给"要在开售那一刻,按指定票价买到指定场次票"的人用。你只需给出账号、演出 ID、购票人

gitblog_00926的博客 506

(三十六)WebView的初步使用

一、WebView简介 在Android手机中内置了一款高性能webkit内核浏览器,在SDK中封装为一个叫做WebView组件。WebView是安卓中用来显示html文本内容的的控件。对html5也有很好的支持,ios的控件UIWebView差不多。 二、使用WebView并不需要开通网络权限 网上有文章说webview需要开通internet权限,否则会出Web page n...

a7m8111的博客 190

Unity WebView中LaTeX数学公式渲染问题深度解析与实战解决方案

在跨平台应用开发中,WebView组件常用于内嵌网页内容以实现富文本展示或H5交互。其核心原理是通过集成系统或第三方浏览器内核,在应用内创建独立的渲染与脚本执行环境。这一技术对于构建教育、科研及数据可视化应用具有重要价值,尤其是在需要展示复杂数学公式的场景。然而,由于WebView通常受限于严格的同源策略、跨域资源加载限制及JavaScript执行环境差异,导致依赖外部CDN资源的LaTeX渲染引擎(如MathJax、KaTeX)常出现字体加载失败、脚本执行错误等问题,使得公式无法正常显示。针对这些挑战,本

weixin_30245867的博客 793
下一篇: iOS 10 项目报错汇总 持续更新
iOS_blackFatterMan
博客等级 码龄10年 0粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值