这个问题通常是由于后端服务器没有正确配置CORS(跨域资源共享)导致的。在服务器端添加一个允许跨域请求的头就能解决这个问题。例如,在Node.js的Express框架中,可以使用以下代码:
app.use(function(req, res, next) {
res.header("Access-Control-Allow-Origin", "*");
res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
next();
});
这段代码将允许所有域名的请求访问该服务器资源。当然,安全起见应该只允许需要的域名请求。
如果你没有权限在服务器端添加这段代码,你可以尝试使用JSONP替代AJAX请求。
另外,如果你的代码是在本地电脑上运行时遇到这个问题,可能是浏览器的安全设置导致的。你可以选择关闭浏览器的安全设置或者在本地起一个服务器来访问资源。