HyBird混合开发的几个注意的地方

做混合开发APP的时候,我们的方案是内置了H5相关的dist包,以本地文件的方式用WebView进行加载。
期间遇到了Webview的安全相关的几个坑点。
1. JS同源策略与跨域访问
   同源策略是浏览器上为安全性考虑实施的非常重要的安全策略。
   何谓同源:
        URL由协议、域名、端口和路径组成,如果两个URL的协议、域名和端口相同,则表示他们同源。
   同源策略:
        浏览器的同源策略,限制了来自不同源的"document"或脚本,对当前"document"读取或设置某些属性。
        从一个域上加载的脚本不允许访问另外一个域的文档属性。
    由于我们的H5是本地加载的,Ajax要访问远程的服务端接口提供功能,那么属于跨域请求了。那么需要对WebView进行设置。
    Android:
         WebSettings settings =  webView.getSettings();
            settings.setAllowFileAccessFromFileURLs(true);
        settings.setAllowUniversalAccessFromFileURLs(true);
    iOS:
        WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init];
        config.preferences = [[WKPreferences alloc] init];
        [config.preferences setValue:@YES forKey:@"allowFileAccessFromFileURLs"];
        i

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值