文件下载,token校验

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>test a</title>
</head>
<body>
<button onclick="test()">导出测试</button>
</body>
    <script>
        function test(){
            var xhr = new XMLHttpRequest();
            xhr.open('get','http://www.enterprise.com/api/v1/staff/staff-export');
            xhr.setRequestHeader('Authorization','Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwOi8vZW50ZXJwcmlzZS50ZXN0LmNuc29kYXRhLmNvbS9hcGkvdjEvbG9naW4iLCJpYXQiOjE2NzgyNjI0OTksImV4cCI6MTY3ODg2NzI5OSwibmJmIjoxNjc4MjYyNDk5LCJqdGkiOiI3NDE0UTBhR0ZWOVBHWUd0Iiwic3ViIjoiMSIsInBydiI6IjM2ZWRhNWYzNGQzOWNhMmViZjQ4ZGFlNDBhNjM0NWY1ZWU1MWI4YmUifQ.i0l-ZH-M7U5KwGViJ1gqrQhMkcWpv7ZHZXQXG7neqRI');
            xhr.send();
            xhr.responseType='blob'
            xhr.onload = function (e) {
                //如果请求执行成功
                if (this.status == 200) {
                    var blob = this.response;
                    var filename = "test.xlsx";
                    var a = document.createElement('a');
                    var url = URL.createObjectURL(blob);
                    a.href = url;
                    a.download = filename;
                    a.click();
                    window.URL.revokeObjectURL(url);
                }
            }
        }
    </script>
</html>

 

 使用XMLHttpRequest发送post请求(有请求体)
由于post请求要带请求体,请求体有三种格式,为了方便服务器接收数据,当提交请求时,需要指定一个叫做Content-Type的请求头

请求体格式:

参数=值&参数=值

代码示例:

 const data = {
       name: 'xxx',
       age: xx,
       ...
        }

// 创建一个XMLHttpRequest对象
let xhr = new XMLHttpRequest()

// 设置请求方式和请求地址
xhr.open('POST', 'http://XXXX')
// 创建一个URLSearchParams对象吧data数据转换成 参数=值&参数=值格式
const usp = new URLSearchParams(data)
const query = usp.toString()

// 设置对应的content-type
xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded')

// 发送请求
xhr.send(query)

// 监听load 响应请求获取响应结果
xhr.addEventListener('load', function () {
    console.log(this.response)

  原文链接:https://blog.csdn.net/weixin_53312997/article/details/125547811

posted @ 2023-03-08 18:04  星云惊蛰  阅读(198)  评论(0)    收藏  举报