没处理跨域前提示
后端处理代码(只要加 res.setHeader(‘Access-Control-Allow-Origin’, ‘*’);允许所以源访问就可以了)
router.get('/test', function(req, res, next) {
//设置响应头,设置允许跨域
res.setHeader('Access-Control-Allow-Origin', '*');
var sql = 'select * from blogs'
db.query(sql, function(err, rows) {
if (err) {
console.log(err)
} else {
console.log(rows)
res.send(rows)
}
});
});
然后使用axios发起请求
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>axios 发送 AJAX请求</title>
<script crossorigin="anonymous" src="https://cdn.bootcdn.net/ajax/libs/axios/0.19.2/axios.js"></script>
</head>
<body>
<button>GET</button>
<script>
// https://github.com/axios/axios
const btns = document.querySelectorAll('button');
//配置 baseURL
axios.defaults.baseURL = 'http://localhost:3000';
btns[0].onclick = function() {
//GET 请求
axios.get('/test', {
//url 参数
params: {},
//请求头信息
headers: {}
}).then(value => {
console.log(value);
});
}
</script>
</body>
</html>