nginx: 处理 options 请求 返回204
使用 nginx 处理 cors 跨域
写一个简单的 API
- 端口在 3000
- 测试脚本
curl localhost:3000/heart
版本 | 代码 |
---|---|
无 cors |
|
使用 express cors |
|
无 cors + nginx 配置实现跨域 |
|
测试网页
- 端口在 localhost:3002
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>HTML</title>
</head>
<body>
<button>Send Request</button>
<script>
// api: http://localhost:3000/heart
//
var btn = document.querySelector('button');
btn.onclick = () => {
// const url1 = `http://localhost:3000/heart?ts=${Date.now()}`;
const url = `http://localhost/api/heart`;
fetch(url, {
method: 'GET',
mode: 'cors',
credentials: 'include',
headers: {
'Content-Type': 'application/json'
}
})
.then((response) => response.json())
.then((data) => console.log(data));
};
</script>
</body>
</html>