【问题标题】:Cordova: links to javascript files located in local resource Not allowedCordova:指向位于本地资源中的 javascript 文件的链接 不允许
【发布时间】:2015-08-10 08:06:51
【问题描述】:

状态:

我从服务器下载了一些 java 脚本文件并将它们保存在设备存储中,并希望将它们链接到我的 index.html,如下所示:

<script 
    type="text/javascript" 
    src="file:///data/data/<app_id>/files/path/to/my-script.js/">
</script>

CSS 也是如此。

这是错误:

Not allowed to load local resource:
file:///data/data/<app_id>/files/path/to/style.css

注意:这在之前的cordova版本中是允许的,但是由于我更新到cordova 5,我强制安装插件白名单,然后出现了这个权限错误。

【问题讨论】:

    标签: cordova security local whitelist cordova-5.0.0


    【解决方案1】:

    我假设您正在尝试在 Android 上实现这一目标。如果那是正确的,我想您可以使用以下方法来解析外部文件系统上的任何文件:

    window.resolveLocalFileSystemURL(path, cbSuccess, cbFail);
    
    
    
    path - {string} a cordova path with scheme: 
                         'cdvfile://localhost/<file-system-name>/<path-to-file>' 
                     Examples: 'cdvfile://localhost/sdcard/path/to/global/file'
                               'cdvfile://localhost/cache/onlyVisibleToTheApp.txt'
    cbSuccess - {function} a callback method that receives a DirectoryEntry object.
    
    cbFail - {Function} a callback method that receives a FileError object.
    

    这虽然需要一些配置。

    config.xml

    <preference name="AndroidPersistentFileLocation" value="Compatibility" />
    <preference name="AndroidExtraFilesystems" value="sdcard,cache" />
    

    AndroidManifest.xml

    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    

    例如使用以下question

    【讨论】:

    • 感谢 George,但这是否有助于我的 android_asset/www/index.html 包含来自 sd 卡的 CSS 文件?事实上,我只是想让一些文件可以从我的服务器更新,以便稍后包含在我的 index.html
    【解决方案2】:

    我通过使用这个插件 CorHttpd Cordova Plugin 在 Cordova 中创建一个嵌入微型 Web 服务器来解决这个问题

    然后简单地通过以下方式引用样式表:

    <link src="http://localhost:8080/css/file.css">
    

    您可以通过以下方式引用JS文件:

    <script src="http://localhost:8080/js/script.js" ><script>
    

    【讨论】:

      猜你喜欢
      • 2021-05-23
      • 2016-02-19
      • 1970-01-01
      • 1970-01-01
      • 2018-03-16
      • 2017-09-05
      • 2015-04-14
      • 2016-03-03
      • 2016-10-08
      相关资源
      最近更新 更多