报错解释:
"Uncaught TypeError: Illegal invocation" 错误通常发生在使用 jQuery.ajax 方法时,尝试使用不符合预期的方式提交数据。这个错误表明调用 jQuery.ajax 时传递的数据对象格式不正确,或者可能是 contentType 的设置问题。
解决方法:
- 确保传递给 
data选项的数据是一个字符串、一个数组或者一个对象。如果你正在传递一个FormData对象,确保没有设置contentType为application/x-www-form-urlencoded或application/json,因为FormData对象已经定义了它自己的Content-Type。 - 如果你设置了 
contentType为application/json,并且你尝试发送的数据不是一个字符串,那么你需要先将数据转换为 JSON 字符串。 
示例代码:
$.ajax({
    url: 'your-endpoint',
    type: 'POST',
    data: yourData, // 确保这里的数据是有效的
    contentType: 'application/json', // 如果你需要发送 JSON 数据
    success: function(response) {
        // 处理响应
    },
    error: function(xhr, status, error) {
        // 处理错误
    }
});
 
// 如果你发送的是 JSON 数据
var yourData = { key: 'value' };
yourData = JSON.stringify(yourData); // 将对象转换为 JSON 字符串确保 data 是有效的,如果 contentType 被设置为 application/json,那么 data 应该是一个 JSON 字符串。如果你正在使用 FormData 对象,则不需要设置 contentType 因为 FormData 自己处理了 Content-Type。