身份验证时获取状态 4​​00 - {"error":"invalid_grant"}

Fra*_*sso 6 javascript c# api oauth

我创建了自己的网站(www.luig.us)。我为 SQL Server 创建了一个基本的 IDE,只教孩子们 SQL、DML。

它要求用户在开始时输入用户名和密码以获得使用该服务的令牌。

在本地,一切正常,但是当我将其放在由 go-daddy 托管的网站上时,我每次都会收到相同的消息,但我不知道为什么。

{“错误”:“无效的授权”}

这是我的 java 脚本代码 - 查找授权。任何帮助表示赞赏。我密切关注这篇文章https://www.c-sharpcorner.com/UploadFile/736ca4/token-based-authentication-in-web-api-2/



function Authorize() {
    let bearer = "Basic Q01JUzMwOERTMzA4OndlYkFQSQ=="
    var email = document.getElementById("email").value;
    var password = document.getElementById("password").value;
    var userNameAndPasswordFilled = (email != "" && password != "");
    if (!userNameAndPasswordFilled) {
        $("#formError").show('fast');
    }
    else {
        var bodyOfRequest = {
            grant_type: "password",
            username: email,
            password: password
        };
        $.ajax({
            type: "POST",
            url: uriManager.access,
            beforeSend: function (request) {
                request.setRequestHeader("Authorization", bearer);
            },
            data: bodyOfRequest,
            success: function (response) {
                sessionStorage.setItem(programKeyWords.BearerToken, response.access_token);
                $('#LogonModal').modal('hide');
            },
            error: function (response) {
                $("#formError").show('fast');
            }
        });
    }
}


Run Code Online (Sandbox Code Playgroud)

Fra*_*sso 0

问题不在于代码。问题在于:

  1. 连接字符串。这是不正确的。
  2. 我正在加密用户名和密码,但由于特殊字符而无法正确匹配

我做了什么来修复它。

  1. 修复了连接字符串
  2. 修复了存储哈希而不是字符串的算法。