【问题标题】:redash GET request works on POSTMAN but not on axiosredash GET 请求适用于 POSTMAN,但不适用于 axios
【发布时间】:2020-07-19 07:35:49
【问题描述】:

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/&lt;company name&gt;/api/queries/&lt;query id&gt;/results.json?api_key=&lt;api key&gt; 的 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;

【问题讨论】:

    标签: javascript reactjs axios postman


    【解决方案1】:

    这不是来自您的代码。你的代码是对的

    CORS 是一项浏览器功能。服务器需要选择加入 CORS 以允许浏览器绕过同源策略。您的服务器将没有同样的限制,并且能够使用公共 API 向任何服务器发出请求。

    你可以阅读更多关于Cross-Origin Resource Sharing的信息

    【讨论】:

      猜你喜欢
      • 2020-06-13
      • 2020-07-07
      • 1970-01-01
      • 2018-06-22
      • 2019-04-11
      • 1970-01-01
      • 2022-01-21
      • 2017-08-06
      • 1970-01-01
      相关资源
      最近更新 更多