android加載本地html請求網絡:NetworkError: Failed to execute 'send' on 'XMLHttpRequest': Failed to load

公司app之前一直使用加載網絡Html,最近有一個較大模塊全部使用網絡下載資源包,加載本地Html,在加載本地Html的過程中或者之後的操作會請求網絡,html在使用ajax請求網絡的時候會報一個異常:

NetworkError: Failed to execute 'send' on 'XMLHttpRequest': Failed to load

問題的原因:瀏覽器因安全問題不支持ajax請求
解決方法:
網上有一種解決方法就是將ajax的請求配置參數改爲異步,如下:

  async: true,//false改爲true

但如果在html中必須使用同步請求,這個方法就不是那麼好的解決方式,其實這個問題完全可以在android端初始化WebView的時候配置解決,如下:

WebSettings ws = mWebView.getSettings();
ws.setAllowUniversalAccessFromFileURLs(true);

參考鏈接:
https://stackoverflow.com/questions/20425481/android-webview-ajax-local-files

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章