简体   繁体   中英

redash GET request works on POSTMAN but not on axios

On redash I have a query. It's GET request. On POSTMAN it works well. Query example:

https://app.redash.io/<company name>/api/queries/<query id>/results.json?api_key=<api key>

But on axios it throws:

Network error

And on console written:

Access to XMLHttpRequest at https://app.redash.io/<company name>/api/queries/<query id>/results.json?api_key=<api key> from origin ' http://localhost:3000 ' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.

My axios default configs:

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;

It's not from your code. your code is right

CORS is a browser feature. Servers need to opt into CORS to allow browsers to bypass same-origin policy. Your server would not have that same restriction and be able to make requests to any server with a public API.

You can read more about Cross-Origin Resource Sharing

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM