Javascript – 为每个用户创build独特的文件

我正在开发一个应用程序,允许用户在他们的网站上embedded一个简短的代码,我的软件将捕获他们所有的表单数据并将其放置在我们的数据库中。

我需要为每个用户生成一个唯一的JS文件,并使用存储在mysql数据库中的dynamicvariables为每个文件添加一些通用代码。

例如:

  • main.js – 这个文件包含通用的代码
  • userid.js – 这个文件是在用户创build一个帐户时生成的,这个文件从main.js中获取所有内容,用数据库中的数据replacedynamicvariables,并显示通用的javascript代码。

我一直在玩node.js文件系统,似乎是要走的路。 任何人都可以帮助我理解上述是如何完成的? 我很困惑,如何更新main.js更新userid.js中的代码?

谢谢

让您的客户的HTML网页forms调用您的JavaScript文件(function),以便进行服务器调用(即,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的名称(以及任何其他表单数据)。 然后您的服务器脚本可以查询数据库,创build文件(从提供的文件句柄),导航文件系统并保存文件。

我通过使用Node.js和Express.js解决了这个问题。 基本上,我build立了一个可以包含用户ID的路​​线。 然后,我用帕格在这个dynamic的url显示该JavaScript数据。