js 获取get请求后的数据
时间: 2023-05-21 17:02:28 浏览: 81
可以使用 XMLHttpRequest 对象来获取 get 请求后的数据,具体代码如下:
```
var xhr = new XMLHttpRequest();
xhr.open('GET', 'http://example.com/api/data', true);
xhr.onload = function() {
if (xhr.status === 200) {
console.log(xhr.responseText);
}
};
xhr.send();
```
其中,`xhr.open()` 方法用于设置请求的方法、URL 和是否异步处理,`xhr.onload()` 方法用于处理请求成功后的回调函数,`xhr.send()` 方法用于发送请求。
相关问题
js http请求如何流式获取接口数据
在JavaScript中,可以使用XMLHttpRequest(XHR)对象发送HTTP请求并获取数据。可以通过设置XHR对象的onreadystatechange和onload事件来实现流式获取接口数据。
以下是一个简单的例子,演示了如何使用XHR对象流式获取接口数据:
```
var xhr = new XMLHttpRequest();
xhr.open('GET', 'https://example.com/api/data', true); // 发送GET请求
xhr.onreadystatechange = function() {
if (xhr.readyState === XMLHttpRequest.LOADING) {
// 当接收到部分数据时触发
console.log(xhr.responseText);
}
};
xhr.onload = function() {
// 当接收到所有数据时触发
console.log(xhr.responseText);
};
xhr.send(); // 发送请求
```
在上面的代码中,首先创建一个XHR对象,并使用open()方法发送一个GET请求。然后设置onreadystatechange事件,在接收到部分数据时触发,并输出数据。最后设置onload事件,在接收到所有数据时触发,并输出数据。最后使用send()方法发送请求。
需要注意的是,XHR对象的onreadystatechange事件在接收到部分数据时可能会触发多次,可以使用readyState属性来判断数据是否接收完成。当readyState等于XMLHttpRequest.LOADING时,表示正在接收部分数据;当readyState等于XMLHttpRequest.DONE时,表示数据已经全部接收完成。
html发起get请求获取数据
在 HTML 中,可以使用 `<script>` 标签来发起 GET 请求并获取数据。这种方式通常用于跨域请求或获取 JSONP 数据。以下是一个示例代码:
```html
<script>
function handleResponse(data) {
// 处理接口返回的数据
console.log(data);
}
</script>
<script src="https://api.example.com/data?callback=handleResponse"></script>
```
在上述代码中,我们通过 `<script>` 标签的 `src` 属性指定了接口的 URL,并在 URL 中添加了一个名为 `callback` 的参数,其值为回调函数的名称(此处为 `handleResponse`)。服务端在返回数据时,会将数据作为参数传递给回调函数,并返回一个 JavaScript 脚本。浏览器解析这个脚本时,会执行回调函数,并传入数据作为参数。
这种方式利用了 JSONP(JSON with Padding)的概念,允许跨域请求并获取数据。需要注意的是,使用 JSONP 存在安全风险,因为它执行了从服务端返回的任意脚本。因此,在使用 JSONP 时,请确保你信任并了解所请求的服务端。
请注意,上述示例中的 URL('https://api.example.com/data')是一个占位符,请替换为你要请求的接口 URL。同时,请确保回调函数名和相应的处理函数在全局范围内可用。