问题描述
我正在构建一个网页,当前停留在代码的登录页面部分。每当我尝试登录时,我总是收到此错误警告:“ 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
-
类CheckLogin: def Post(个体): 数据= web.input() 登录= LoginModel.LoginModel() isCorrect = login.check_user(data)
if isCorrect: return isCorrect return "error"
解决方法
尝试在AJAX请求中的URL上添加斜杠:
$.ajax({
url: '/check-login/',...