Sunday, 30 April 2017

execute server side script for file creations

Using node.js, I am developing a small web application where want to create a file on server with a button click on browser. I have a small file "file.js" in public folder as below,

var fs = require("fs");

console.log("Going to write into existing file");

fs.writeFile('input.txt', 'Simply Easy Learning!',  function(err) {
   if (err) {
      return console.error(err);
   }

   console.log("Data written successfully! checked");
   console.log("Let's read newly written data");
   fs.readFile('input.txt', function (err, data) {
      if (err) {
         return console.error(err);
      }
      console.log("Asynchronous read: " + data.toString());
   });
});

It works fine when i execute this as "node file.js" and creates a input.txt. Calling this file in html page where trying to call through ajax call as below,

<!DOCTYPE html>
<html>
<head>
<meta content="en-us" http-equiv="Content-Language">
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>  

<script>
console.log(' firstpage ');
function readTextFile(){
console.log(' in function readTextFile ');
var dataString;
$.ajax({
  type: "GET",
  url: "file.js",
  data: dataString,
  success: function(err,data){
        alert( "Data Saved: " + data );
  },
  error: function(XMLHttpRequest, textStatus, errorThrown) {
     console.log(errorThrown);
  }
});

}

</script>
</head>
<body>
<p class="auto-style1"><strong>Welcome to MyPage</strong></p>
<div >
<input class="myButton" type="button" onclick="readTextFile()" value="Submit" />
</div>
</body>
</html>

Pressing the button gives me error,

ReferenceError: require is not defined
    at eval (eval at <anonymous> (jquery.min.js:2), <anonymous>:1:10)
    at eval (<anonymous>)
    at jquery.min.js:2
    at Function.globalEval (jquery.min.js:2)
    at text script (jquery.min.js:4)
    at Pc (jquery.min.js:4)
    at x (jquery.min.js:4)
    at XMLHttpRequest.b (jquery.min.js:4)

please help , where i am making mistake and how to fix. Many thanks in advance.



via sand

No comments:

Post a Comment