如何解决此 WCF/AJAX 问题?(访问数据库时出现 400 Bad Request 错误)

向前和向上

我是 AJAX 和 JavaScript 的新手,所以请耐心等待。我想使用 AJAX 调用将新用户对象发送到 WCF C# 方法,然后该方法在 SQL 服务器数据库中创建用户,然后让 C# 将验证对象发送回 AJAX 调用,(包含一个用户已成功创建或尚未创建的消息)。

这是我的 AJAX 代码:

$("#createUserCallButton").click(function () {
       var reply = $.ajax({
            url: "http://localhost/userservice/user.svc/createuser",
            dataType: "json",
            contentType: "application/json; charset=utf-8",
            type: "POST",
            data: JSON.stringify({
                "username": "ThisIsMyUsername",
                "password": "ThisIsMyPassword"
            }),

            success: function (data) {
                console.log('success');
                console.log(reply.responseText);
            },
            error: function (error) {
                console.log('failure');
                console.log(error);
            },

        });
    });

这是我的 C# 代码:

public class User
{
    [DataMember]
    public string username { get; set; }

    [DataMember]
    public string password { get; set; }
}



[OperationContract]
[WebInvoke(Method = "*", UriTemplate = "/createuser",
RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json,
BodyStyle = WebMessageBodyStyle.Bare)]
Validation Create_User(User json);



 public Validation Create_User(User user)
 {
        Validation validation = new Validation { PassesValidation = true, Reason = ("") };

        dataAccessor.CreateOne_User(user);

        return validation;

 }

现在,当我注释掉这一行时...

        dataAccessor.CreateOne_User(user);

它将验证对象返回到控制台窗口并报告成功。但是当出现这一行时(并且代码将关闭以创建用户),AJAX 调用将返回失败并显示以下错误:

Failed to load resource: the server responded with a status of 400 (Bad Request)

但是,即使它报告失败,用户也已在数据库中成功创建,所以我认为问题不在于它的数据库部分。

我认为这归结为我对 AJAX 理解的差距。我已经仔细研究了这个并观看了无数的教程视频,但我仍然在挣扎。如果有好心人能想出解决这个问题的办法,我将不胜感激。

谢谢!

巴克图

当它在下面的行被注释时返回验证对象,我怀疑在执行下面的语句时应该有一个错误。也许你可以添加 try catch 块或日志来确定代码到底在哪里中断。

'dataAccessor.CreateOne_User(user);'。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何解决 KeyError: 400 Bad Request

如何解决 django 中的 <Request 400> 错误?

请求的 URL 返回错误:400 Bad Request

使用React时如何解决400错误请求错误?

如何解决 HTTPError: 400 Client Error: Bad Request for URL inRobot Frame work

使用 Google Api Batch Request 收到 400 Bad Request 错误

意外错误400:Bad Request HttpBuilder POST Request

如何解决/处理偶尔出现的API 400错误

如何解决InterFAX python库400错误?

JS:如何处理从API URL返回的400 Bad Request错误

如何修复 .Net Core POST 操作中的 400 Bad Request 错误?

如何忽略错误而不是返回 400 Bad Request? - Django Rest Framework

远程服务器尝试执行AddMessageAsync()时返回错误:(400)Bad Request

“400 Bad Request Error”错误的根源是什么?

使用Python Socket GET请求获取400 Bad Request错误

Django:为什么我收到 400 bad request 错误?

Google应用程序引擎更新用户信息时出现错误400 BAD_REQUEST

使用 urllib 时出现 400 Bad Request HTTPError 异常

使用 Spring Boot 时出现 400 Bad Request

尝试在uwsgi和nginx中使用flask-socket时经常出现400 Bad Request错误

如何解决创建 MySQL 5.5.53 只读副本时出现错误 InvalidParameterCombination,状态 400?

“消息正文格式错误。无法映射到预期格式”响应与 400 Bad request 更新控制器服务时

如何访问 Microsoft 认知 API(HTTPError: HTTP Error 400: Bad Request)

SearchFacesByImage 中的 Rekognition InvalidS3ObjectException 错误(400 Bad Request.. 无法从 S3 获取对象元数据)

白标错误页面 - 如何解决此问题

JQGrid Subgrid错误如何解决此问题?

缩小的React错误#152-如何解决此问题?

如何解决 Telepot 库中的此错误?

Azure:创建服务原则时如何解决此错误?