网页在本地主机中工作正常但在我在谷歌驱动器中托管时却不行

时间:2015-06-30 12:29:50

标签: ajax cross-domain

当我从我的浏览器(作为本地主机)运行它时,标题中提到的以下代码工作正常,但是当我尝试从我在谷歌驱动器中发布的文件运行相同的网页时,它无法正常工作。看起来页面正确加载(在外观中),但它不再起作用。

<html>
<head>
    <title>ESP8266 LED Control</title>
</head>
<body>

<!-- in the <button> tags below the ID attribute is the value sent to the arduino -->

<button id="11" class="led">Toggle Pin 11</button> <!-- button for pin 11 -->
<button id="12" class="led">Toggle Pin 12</button> <!-- button for pin 12 -->
<button id="13" class="led">Toggle Pin 13</button> <!-- button for pin 13 -->

<script src="jquery.min.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $(".led").click(function(){
            var p = $(this).attr('id'); // get id value (i.e. pin13, pin12, or pin11)
            // send HTTP GET request to the IP address with the parameter "pin" and value "p", then execute the function
            $.get("http://78.87.xx.xx:337/", {pin:p}); // execute get request
        });
    });
</script>
</body>
</html>  

通过一个特定的参数向IP地址发送GET请求,即按下每个按钮后GET /?LED1 =在HTTP / 1.1上,但是听众方面没有任何信息(http://78.87.xx.xx:337/

1 个答案:

答案 0 :(得分:0)

您无法在所有浏览器中默认将AJAX请求发送到其他域/ IP。在localhost / 127.0.0.1上下文中浏览时,这些限制将被关闭。

如果您要向其他域/ IP发送请求,则必须启用cross-origin resource sharing,否则必须使用JSONP