猿问

本地webapp是怎么解决跨域问题的?

像ionic的cli,都可以把一个ionic的webapp打包成本地的,那这样的话是如何解决跨域问题的?

在PC上,我直接访问连接获取数据,代码如下。(抄自W3School)

<html>

<head>

<script type="text/javascript">

function loadXMLDoc()

{

var xmlhttp;

if (window.XMLHttpRequest)

  {// code for IE7+, Firefox, Chrome, Opera, Safari

  xmlhttp=new XMLHttpRequest();

  }

else

  {// code for IE6, IE5

  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

  }

xmlhttp.onreadystatechange=function()

  {

  if (xmlhttp.readyState==4 && xmlhttp.status==200)

    {

    document.getElementById("myDiv").innerHTML=xmlhttp.responseText;

    }

  }

xmlhttp.open("GET","http://www.w3school.com.cn/ajax/demo_get.asp",true);

xmlhttp.send();

}

</script>

</head>

<body>


<h2>AJAX</h2>

<button type="button" onclick="loadXMLDoc()">请求数据</button>

<div id="myDiv"></div>


</body>

</html>

在浏览器输入“file:///C:/Users/WINFIELD/Desktop/localinvoke/index.html”进行访问这个页面
在普通浏览器里点击按钮,是会发生跨域提示的,在设置了允许跨域的Chrome浏览器,数据可以正常返回,我理解的ionic打包(比如说打包成apk),肯定不会在这个apk里自带一个httpserver,那么应该也是类似于用这种文件路径的形式进行访问的,那么它如何解决跨域的问题的呢?

回首忆惘然
浏览 1968回答 1
1回答

慕丝7291255

浏览器才存在跨域问题,而且浏览器是bs中的b端,和服务器没啥关系,js打包为原生应用无非是有个浏览器运行环境,也许直接关了跨域安全设置,也许和浏览器完全一样
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答