javascript - 通过 Ajax 将数据发送到 .NET 中的处理程序。 XML解析错误: no root element found

标签 javascript .net ajax razor razor-pages

我有以下在我的用户界面中执行的脚本。

元数据是一个JSON对象,它从其他地方传递到函数中。

enter image description here

Dashboard.cshtml

<script>
    function sendToken(metadata) {
        $('#link-button').html('<i class="fas fa-circle-notch fa-spin"></i>');
        $.ajax({
            type: "POST",
            url: "Dashboard?handler=Token",
            headers: {
                "XSRF-TOKEN": $('input:hidden[name="__RequestVerificationToken"]').val()
            },
            contentType: "application/json; charset=utf-8",
            data: JSON.stringify(metadata),
            success: function(response) {
                $('#link-button').html('<i class="fas fa-success"></i> Account Connected Successfully');
            },
            failure: function(response) {
                $('#link-button').html('<i class="fas fa-success"></i> Failed To Connect Account');
            }
        });
    }
</script>

RazorPages 中的处理程序 (Dashboard.cshtml.cs):

public JsonResult OnPostToken() {

    MemoryStream stream = new MemoryStream();
    Request.Body.CopyTo(stream);
    stream.Position = 0;

    using(StreamReader reader = new StreamReader(stream)) {
        string requestBody = reader.ReadToEnd();
        if (requestBody.Length > 0) {

            // Get Public Token
            Console.WriteLine("Public Token: " + requestBody);

            // Create Badges

        }
    }

    return new JsonResult("");
}

错误:

enter image description here

这是怎么回事?为什么我无法将数据发送到我的处理程序进行处理?

最佳答案

看起来您正在传递 Json 数据,您需要将其反序列化:

var myObj =  JsonConvert.DeserializeObject<youdatatype>(Request.Body)

您的数据类型是什么?

关于javascript - 通过 Ajax 将数据发送到 .NET 中的处理程序。 XML解析错误: no root element found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57334695/

相关文章:

javascript - 拒绝访问 : Not authorized to perform sts:AssumeRoleWithWebIdentity

c# - 基于变量的第 n 个字符未按预期工作

c# - 我可以在 Remoting 中使用 CAO 接口(interface)吗?

mysql - PHP MySQL 数据到 AngularJS

javascript - 有没有办法知道当前是否正在提交 HTML 表单?

javascript - 将数组变成多维数组? JavaScript

javascript - Google map Api 按钮 "route to marker"/转到 Google map

c# - Azure 表存储 SDK - 清空表

asp.net - asp.net updatePanels 的替代方案

javascript - 如何在 Highcharts 的图例中显示情节线?