如图,我直接访问8000/server是成功的,但是用客户端代码访问却出了不知名的问题,求大佬解答。
代码如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Ajax请求</title>
<style>
#result{
width: 200px;
height: 200px;
border: solid 1px #000;
}
</style>
</head>
<body>
<button>发送请求</button>
<div id="result"></div>
<script>
let btn=document.getElementsByTagName('button')[0];
let result=document.getElementById('result');
btn.onclick=function(){
//创建对象
const xhr= new XMLHttpRequest();
//设置请求方法和url
xhr.open('GET','https://172.0.0.1:8000/server');
//发送
xhr.send();
//事件绑定
xhr.onreadystatechange=function(){
if(xhr.readyState==4){
if(xhr.status>=200&&xhr.status<300){
console.log(xhr.response);
result.innerHTML=xhr.response;
}
}
}
}
</script>
</body>
</html>
服务端代码:
const { request, response } = require('express');
const express=require('express');
const app=express();
app.get('/server',(request,response)=>{ //路径url第二段是/server执行此回调函数
//设置响应头 设置允许跨域
response.setHeader('Access-Control-Allow-Origin','*')
response.send("hello ajax"); //8000端口给我们的相应 设置响应体
});
app.listen(8000,()=>{
console.log("服务已经启动,8000 端口监听");
})