使用javascript生成POST表单?

时间:2016-07-08 23:57:48

标签: javascript json forms post

我尝试使用javascript生成一个会发布到网络服务的表单。但是,我在格式化数据时遇到了问题。它需要在json?我将如何制作此表格。

var form = document.createElement('form');
with (form) {
    setAttribute("name", "theForm"); // give form a name
    setAttribute("action", pathTOGO); // give form an action
    setAttribute("method", "post"); // give form a method

}


document.getElementsByTagName("body")[0].appendChild(form);
document.forms[0].submit();

但是,pathTOGO需要帖子包含json格式的信息。 如何使用javascript指定此表单将发送

{
   "Auth": "",
   "User":"",

}

填写字符串以及确保帖子知道

Content-Type = application/json

非常感谢任何帮助。基本上我的问题是如何创建一个使用javascript创建这个精确HTTP帖子的表单?

POST /WEBSITEPOSTLOCATION HTTP/1.1
Host: WEBSITE
Content-Type: application/json

{
    "Auth":"SOMEVAL",
    "User":"SOMENAME"
}

非常感谢你。

1 个答案:

答案 0 :(得分:0)

将表单数据以name = value的形式发布到服务器,因此为了使用表单执行此操作,您需要在参数上发布字符串化的JSON对象。 例如,您可以在表单中放置一个名为json的输入(type =“text”),并将值放在JSON对象中(inputelement.value = JSON.stringify(myJsonObject))。然后,服务器将使用json文本获取名为json的参数。

但即使您是通过按钮调用数据,也应该使用ajax请求更轻松地发布数据。

这是一个类似的问题: How to send a JSON object using html form data