js文件ajax怎么连接新浪疫情接口

JavaScript025

js文件ajax怎么连接新浪疫情接口,第1张

js文件ajax连接新浪疫情接口步骤如下:

1、用document.getElementById().value取到输入框里的股票代码,拼接到url。

2、注意ajax默认是异步请求,需要把async属性设为false。

3、请求成功前,浏览器会运行后面的脚本,用户也能进行其他操作,同步请求会在请求成功前锁住浏览器,直到请求成功后再向下运行。

4、必须等待请求到的数据才能进行后续步骤,固设置为同步请求。

5、新浪提供的这个接口会返回信息,用split(’~’)将字符串分段为数组,取message[3],第四段数据赋值给全局变量date。

6、最后,让这些功能函数在点击查询后定时调用。

<script type="text/javascript">  

    //请求函数  

    function f1(){  

        console.log('start')  

        //1.创建AJAX对象  

        var ajax = new XMLHttpRequest()  

          

        //4.给AJAX设置事件(这里最多感知4[1-4]个状态)  

        ajax.onreadystatechange = function(){  

            //5.获取响应  

            //responseText      以字符串的形式接收服务器返回的信息  

            //console.log(ajax.readyState)  

            if(ajax.readyState == 4 && ajax.status == 200){  

                var msg = ajax.responseText  

                console.log(msg)  

                //alert(msg)  

                var divtag = document.getElementById('result')  

                divtag.innerHTML = msg  

            }  

        }  

          

        //2.创建http请求,并设置请求地址  

        var username = document.getElementsByTagName('input')[0].value  

        var email = document.getElementsByTagName('input')[1].value  

        username = encodeURIComponent(username)    //对输入的特殊符号(&,=等)进行编码  

        email = encodeURIComponent(email)  

        ajax.open('get','response.php?username='+username+'&email='+email)  

          

        //3.发送请求(get--null    post--数据)  

        ajax.send(null)  

    }  

      

</script>

跨域了呗,你的网站中引用的JS,不管这个JS文件是你自己的还是别人的,都无法使用AJAX请求不同域名的地址。

一般这类问题会用JSONP来解决,不过JSONP对服务器返回的数据结构有要求。

至于什么是跨域和JSONP,百度一下,你就知道。