【发布时间】:2017-12-20 06:48:04
【问题描述】:
我正在使用“jQuery”(前端)和“Python”(后端)开发一个 Web 应用程序。在发出 PUT 请求以更新数据库中的详细信息时,这是我在控制台中遇到的错误:
OPTIONS "REST API URL" net::ERR_CONNECTION_REFUSED
我的 jQuery 代码是:
$.ajax({
type: "PUT",
url: "REST API URL",
headers: {"Content-Type": "application/json", "Authorization": AuthToken},
data: "details to be updated in database",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(data,status) {
//do something with data
},
error: function(data,status) {
//show error data and status
}
)};
我了解了除 GET 和 POST 之外的 HTTP 请求如何首先作为 OPTIONS 请求进行预飞行,并且只有当它是真正的请求时,它才会作为 PUT/DELETE/PATCH 请求进行处理。
我看到解决方案说它可能是CORS 问题,但CORS 从后端启用 以允许GET/POST/PUT/PATCH/DELETE 请求。此外,我能够成功发出 GET 和 POST 请求,但没有通过 PUT 请求。
我正在使用“Chrome 开发工具”并研究了如何通过清除缓存和 cookie、刷新 DNS 和重新安装 Chrome 来修复 Chrome 的此错误,但到目前为止没有任何解决方案有效。
我正在制作前端 UI,不确定这是客户端错误还是服务器端错误?
任何帮助将不胜感激。
【问题讨论】:
-
url: "REST API URL" ,你知道这一定是真正的 api url 吧?
-
我使用了真正的API,但忘记提及端口号。我的一个非常愚蠢的错误。谢谢
标签: javascript jquery python google-chrome