繁体   English   中英

如何解决 HTTP/1.1 POST 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
  1. 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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM