我正在开发一个应用程序,允许用户在他们的网站上嵌入一个简短的代码,我的软件将捕获所有表单数据并将其放在我们的数据库中。
我需要为每个用户生成一个唯一的JS文件,并使用存储在mysql数据库中的动态变量为每个文件添加一些通用代码。
例如:
我一直在玩node.js文件系统,看起来就是这样。任何人都可以帮我理解如何实现上述目标吗?我很困惑,每当我更新main.js时,我将如何更新userid.js中的代码?
由于
答案 0 :(得分:0)
让客户的html网络表单调用您的javascript文件(函数),以便向服务器发出服务器调用(即ajax调用):
<form name="myForm">
<input name="userName">
<button onclick="createFileName_SendToServer()" type="submit" value="submit">Submit</button>
</form>
<!-- language: lang-js -->
<script>
function createFileName_SendToServer(){
// 1: Get user name from the web form
var userName = document.myForm.userName.value;
// clearly this can be used for all form fields
// 2: Use the userName as the name of the new file
var userIdFileName = userName + ".js";
// 3: send this info to your server script
// make an AJAX call, add additional args for other form data
var trueOrFalse = ajaxToYourServer(userIdFileName);
}
</script>
JS函数(通过AJAX)向您的服务器脚本发送userIDFileName的名称(以及任何其他表单数据)。然后,您的服务器脚本可以查询数据库,创建文件(从提供的文件句柄中),导航文件系统并保存文件。
答案 1 :(得分:0)
我通过使用Node.js和Express.js解决了这个问题。基本上,我构建了一个可以包含用户ID的路由。然后,我用pug在这个动态网址中显示javascript数据。