javascript - 如何使 form.submit 在 Javascript 引用中分隔发布数据的名称和值

标签 javascript c# forms json.net asp.net-web-api

我需要使用纯 Javascript(无 JQuery)提交以编程方式创建的表单。

一切正常,除了到达服务器时不带引号的发布数据(C# JsonConvert.DeserializeObject() 方法无法解析)。

作为token:a987a87f9k到达

但是我希望数据以'token':'a987a87f9k'

的形式到达

我应该在此代码中更改什么

var form = document.createElement("form");
form.setAttribute("id", "noid");
form.setAttribute("method", "post");
form.setAttribute("action", url);
form.setAttribute("target", tabName);
form.setAttribute("style", "display: none;");

var field = document.createElement("input");
field.setAttribute("name", 'token');
field.setAttribute("value", AccountService.GetAuthenticationToken());
form.appendChild(field);

document.body.appendChild(form);
window.open('about:blank', tabName);
form.submit();

读取服务器端:

//content = "token:a987a87f9k";
var content = request.Content.ReadAsStringAsync().Result;

最佳答案

当服务器需要 JSON 时,表单发布以“表单编码格式”将数据发送到服务器。您要么更改服务器上的设置,要么在客户端上使用类似这样的技术:Convert form data to JavaScript object with jQuery

关于javascript - 如何使 form.submit 在 Javascript 引用中分隔发布数据的名称和值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30453480/

相关文章:

javascript - jQuery 类不会添加更改选择框的选项

c# - 如何使用 .NET 6 最小 API 将 wwwroot 目录下的文件路径作为 URL 返回?

PHP 表单成功发布到 MySQL 数据库,但添加了空白行

security - 自动完成 ="off"是否应该用于所有敏感字段?

javascript - React hooks,获取复选框 onChange 的值并传递给submitForm

javascript - 为什么将冒号放在变量名之前是js中的有效代码?

c# - DocumentItem.SaveAs 导致文件损坏

C# 将 mm/d/yyyy 转换为 YYYYmmDD

html - 如何在文本区域内放置一个 float 按钮?

javascript - 如何在javascript中定义嵌套数组?