首页 > 解决方案 > 使用 fetch 的无效请求方法 DELETE

问题描述

vanilla JS在这里,尝试使用fetch通过api删除资源-出现以下错误:“无效的请求方法DELETE”-我能够毫无问题地邮递/卷曲相同的端点,完成后的状态代码为204在那些情况下。知道我在这里做错了什么吗?

function btnTrash(e) {
    var uuid = this.parentNode.parentNode.parentNode.id
    var url = "http://10.10.10.10:8080/api/v1/delete/" + uuid
    fetch(url, {
        method: 'DELETE', 
        mode: 'no-cors' 
      });
}

编辑:设法解决了这个问题 - 我没有在后端设置允许的方法"Access-Control-Allow-Methods", "GET, POST, OPTIONS, DELETE"),最后删除了mode: no-cors.

请记住,删除mode: no-cors仅有效,因为我将响应设置access-control-allow-origin"*"


function btnTrash(e) {
    var uuid = this.parentNode.parentNode.parentNode.id
    var url = "http://192.168.0.16:8080/api/v1/delete/" + uuid

    fetch(url, {
        method: 'DELETE',
    })
        .then(response => {
            if (response.status == 204){
                    // do something
            }
        })
}

标签: javascript

解决方案


推荐阅读