在redash上有一个查询。这是GET
个请求。在POSTMAN
上运行良好。
查询示例:
https://app.redash.io/<company name>/api/queries/<query id>/results.json?api_key=<api key>
但是在axios
上会抛出:
网络错误
在控制台上这样写:
从原点“ http://localhost:3000”到
https://app.redash.io/<company name>/api/queries/<query id>/results.json?api_key=<api key>
的XMLHttpRequest的访问已被CORS策略阻止:对预检请求的响应未通过访问控制检查:无“ Access-Control-Allow-Origin”标头出现在请求的资源上。
我的axios
默认配置:
import axios from 'axios/index';
import { appVersion } from '../../constants/defaultValues';
const { CancelToken } = axios;
export const source = CancelToken.source();
const api = axios.create({
timeout: 5 * 60 * 1000,
headers: {
version: appVersion,
},
cancelToken: source.token,
});
export default api;
答案 0 :(得分:1)
不是来自您的代码。您的代码正确
CORS是浏览器功能。服务器需要选择加入CORS,以允许浏览器绕过同源策略。您的服务器将没有相同的限制,并且能够使用公共API向任何服务器发出请求。