Javascript Axios删除请求错误失败

Javascript Axios删除请求错误失败,javascript,axios,Javascript,Axios,我已经从我的API Spring中创建了一个按id删除的方法,当我使用Postman执行请求时,一切都正常,但当我尝试使用代码执行此操作时,会出现错误。我正在使用CORS插件。GET请求起作用,但delete不起作用。我的代码如下和我的错误: 方法删除: DELETE(url) { try { console.log(axios.post(url, { headers: { 'Cont

我已经从我的API Spring中创建了一个按id删除的方法,当我使用Postman执行请求时,一切都正常,但当我尝试使用代码执行此操作时,会出现错误。我正在使用CORS插件。GET请求起作用,但delete不起作用。我的代码如下和我的错误: 方法删除:

DELETE(url) {
        try {
            console.log(axios.post(url, {
                headers: {
                    'Content-Type': 'application/json',
                    'Accept': 'application/json'
                }
            }));
            return axios.delete(url)
        } catch (e) {
            return e;
        }
    }
  deleteDiscount(id) {
        return new Promise((resolve => {
            this.DELETE(`http://localhost:8080/discount/${id}`)
                .then(response => {
                    resolve(response.data)
                }).catch();
        }))
    }

因此,当我这样做时,我得到:

Access to XMLHttpRequest at 'http://localhost:8080/discount/d1' from origin 'http://localhost:63343' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.
DELETE http://localhost:8080/discount/d1 net::ERR_FAILED
Uncaught (in promise) Error: Network Error
    at e.exports (isAxiosError.js:10)
    at XMLHttpRequest.l.onerror (isAxiosError.js:10)
在控制台日志中:

_proto__: Promise
catch: ƒ catch()
constructor: ƒ Promise()
finally: ƒ finally()
then: ƒ then()
Symbol(Symbol.toStringTag): "Promise"
__proto__: Object
[[PromiseState]]: "rejected"
[[PromiseResult]]: Error: Network Error at e.exports (https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js:2:9719) at XMLHttpRequest.l.onerror (https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js:2:8491)
config: {url: "http://localhost:8080/discount/d1", method: "delete", headers: {…}, transformRequest: Array(1), transformResponse: Array(1), …}
isAxiosError: true
request: XMLHttpRequest {readyState: 4, timeout: 0, withCredentials: false, upload: XMLHttpRequestUpload, onreadystatechange: ƒ, …}
response: undefined
toJSON: ƒ ()
message: "Network Error"
stack: "Error: Network Error\n    at e.exports (https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js:2:9719)\n    at XMLHttpRequest.l.onerror (https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js:2:8491)"
__proto__: Object

通过在禁用安全性的情况下打开chrome进行修复。代码可以完美地工作。 编辑*
在SPring api上为CORS编写了一个允许无处不在的配置,在没有插件或禁用安全性的情况下可以完美工作。

“我正在使用CORS插件”-它似乎不起作用…但您还没有向我们展示相关代码。@Quentin,在我的chrome浏览器中使用CORS插件。它确实适用于其他请求。问题不在这里。为什么您同时发出POST请求和DELETE请求?当你没有发布json(或任何其他内容)时,为什么POST请求有
应用程序/json
内容类型。“在我的chrome浏览器中使用CORS插件。它可以处理其他请求。问题不在其中”-哦。那些太可怕了。它们往往不处理预处理的请求。用一个真正的解决方案来代替。@Quentin,我只是尝试了一些找到的解决方案,看看它们是否有效,但没有。另外,如果我在console.log中更改为axios.delete,则删除我获得的相同内容)