javascript - 本地主机上的 Nestjs(服务器)和 Vuejs(客户端)上的 CORS 阻塞获取功能
问题描述
我尝试通过使用节点和嵌套 js 来学习构建我自己的 RestAPI。一切正常,在 POSTMAN 上测试:它工作正常。
但是当我试图从我的前端获取它时,它被 CORS 阻止了。虽然我在 Nestjs 上启用了 cors 设置。
import { AppModule } from './app.module';
async function bootstrap() {
const app = await NestFactory.create(AppModule);
app.enableCors();
await app.listen(3000);
}
bootstrap();
并从 VueJS 调用它:
postPackageToServer: function () {
var myHeaders = new Headers();
myHeaders.append("Content-Type", "application/json");
var raw = JSON.stringify({
type: "monthly",
price: 30,
startDate: "04-08-2020",
endDate: "06-08-2020",
});
var requestOptions = {
method: "POST",
headers: myHeaders,
body: raw,
redirect: "follow",
};
let postData = async() => {
let postingDating = await fetch("localhost:3000/vouchers", requestOptions)
.then((response) => response.text())
.then((result) => console.log(result))
.catch((error) => console.log("error", error));
}
},
我可以知道我做错了什么吗?以及如何解决它。如果这个问题已经被其他问题回答了,我很想从中学习。
谢谢你
解决方案
看起来你的代码没问题。
尝试在客户端请求上添加 http/https 协议
尝试更改 cors 选项
var corsOptions = {
origin: 'http://example.com',
optionsSuccessStatus: 200 // some legacy browsers (IE11, various SmartTVs)
choke on 204
}
推荐阅读
- android - 如何避免 Firebase 由于 Play 服务版本错误而进入无限循环?
- php - 如何在 URL 中连接链接
- javascript - Socket.io 不适用于 Angular4
- c# - Elasticsearch.NET & NEST - 搜索总是返回 0 个结果
- python - Selenium - socket.error:[Errno 111] 连接被拒绝
- java - 没有可运行的方法 Junit
- python - 如何在 dask 中找到数据帧的长度?
- bash - jq合并对象内的数组
- facebook - Facebook Graph API - 帐户支出限额
- fabricjs - 从fabric.js上加载的svg获取可编辑的文本?