![](/img/trans.png)
[英]Ajax call to an API return error HTTP/1.1 405 Method Not Allowed
[英]How to resolve a HTTP/1.1 POST 405 Method Not allowed error
我正在构建一个网页,目前停留在代码的登录页面部分。 每当我尝试登录时,我都会不断收到此错误警告:“HTTP/1.1 POST /check-login”- 405 方法不允许。 我已经检查了我的代码几次,并将其与我正在观看的讲座视频进行了比较,但到目前为止我所尝试的一切似乎都无法让我克服这个错误。 我对自学编码还很陌生,所以答案可能非常简单,我只是看不到。 该项目适用于多种编程语言,并且位于多个不同的页面上。 大部分代码在 Python 和 HTML 中,一页在 java 脚本中。 我认为 java 脚本页面可能是造成延迟的原因,因为这是主要设置检查登录代码的地方。 如果有人可以帮助我确定问题出在哪里以及如何纠正它,我将不胜感激。 这些是我认为与正在发生的问题相关的代码部分。
1.
$(document).on("submit", "#login-form", function(e){
e.preventDefault();
var form = $(this).serialize();
$.ajax({
url: '/check-login',
type: 'POST',
data: form,
success: function(res){
if(res == "error"){
alert("Could not log in");
}
else{
console.log("Login as ", res);
window.location.href = "/";
}
}
});
});
import pymongo
from pymongo import MongoClient
import bcrypt
class LoginModel:
def __init__(self):
self.client = MongoClient()
self.db = self.client.codewizard
self.Users = self.db.users
def check_user(self, data):
user = self.Users.find_one({"username": data.username})
if user:
if bcrypt.checkpw(data.password.encode(), user["password"]):
return user
else:
return False
else:
return False
class CheckLogin: def Post(self): data = web.input() login = LoginModel.LoginModel() isCorrect = login.check_user(data)
if isCorrect: return isCorrect return "error"
尝试在 AJAX 请求中向 URL 添加尾部斜杠:
$.ajax({
url: '/check-login/',
...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.