使用JavaScript在POST方法中传递值
这是我的JavaScript函数:我通过google it获得这个函数使用JavaScript在POST方法中传递值,javascript,node.js,http-post,Javascript,Node.js,Http Post,这是我的JavaScript函数:我通过google it获得这个函数 function postURL() { var jobValue = document.getElementsByName('folderName')[0].value; url = 'http://localhost:8888/TaaS/Sachin/Input' + "?FolderName=" + jobValue; var form = document.createElement("FOR
function postURL() {
var jobValue = document.getElementsByName('folderName')[0].value;
url = 'http://localhost:8888/TaaS/Sachin/Input' + "?FolderName=" + jobValue;
var form = document.createElement("FORM");
form.method = "POST";
//if(multipart) {
form.enctype = "multipart/form-data";
//}
form.style.display = "none";
document.body.appendChild(form);
form.action = url.replace(/\?(.*)/, function(_, urlArgs) {
urlArgs.replace(/\+/g, " ").replace(/([^&=]+)=([^&=]*)/g, function(input, key, value) {
input = document.createElement("INPUT");
input.type = "hidden";
input.name = decodeURIComponent(key);
input.value = decodeURIComponent(value);
form.appendChild(input);
});
return "";
});
form.submit();
}
我在onclick期间调用这个函数
<button type="submit" class="btn btn-primary start" onclick="postURL()">
<i class="glyphicon glyphicon-upload"></i>
<span>Create Folder</span>
</button>
如何在node.js文件中获取该值?您没有指定,但我假设您正在服务器端使用Express。尽管
POST
ing表单,但在示例中,您将jobValue
作为查询字符串参数(FolderName
)发送,以便在处理程序函数中使用:
req.query.FolderName
在回调的上下文中:
function(req, res) {
switch (req.method) {
case 'OPTIONS':
res.end();
break;
case 'POST':
var jobValue = req.query.FolderName; //<-- Your variable
console.log('req.url: ' + req.url);
break;
default:
res.statusCode = 405;
res.end();
}
}
功能(请求、恢复){
开关(请求方法){
案例“选项”:
res.end();
打破
案例“POST”:
var jobValue=req.query.FolderName;//输入的id并使用document.getElementById('id');如何在node.js文件中获取该值?+1也不要忘记在jobValue
上使用encodeURIComponent()
,不要只按原样将其添加到URL中。是的,这一点很好。
function(req, res) {
switch (req.method) {
case 'OPTIONS':
res.end();
break;
case 'POST':
var jobValue = req.query.FolderName; //<-- Your variable
console.log('req.url: ' + req.url);
break;
default:
res.statusCode = 405;
res.end();
}
}