node运行js获得输出的三种方式

一.通过console.log输出(我最喜欢的)

1.js脚本

1.js

var arguments = process.argv.splice(2);  //获得入参
var a= arguments[0];  取第一个 
console.log(a) //输出

2.python脚本

test_1.py

import os 
print(os.popen('node 1.js fuck').read())
#打印结果fuck

二.通过文件读写获取

1.js脚本

1.js

//npm环境别忘了装了
var arguments = process.argv.splice(2);  //获得入参
var a= arguments[0];  取第一个 
var forge = require('node-forge');  //生成个读写文件的对象
fs.writeFile(文件路径, a, function (error) {});   //function (error) {}为回调函数

2.python脚本

test_1.py

import os 
#运行脚本
os.system('node 1.js fuck')
with open(path1, 'r', encoding='utf8') as fr:
    a = fr.read().split()[0]
    print(a)
#打印结果fuck

三.node起服务

1.get请求脚本

var http = require('http');
var url = require('url');
var util = require('util');
 
http.createServer(function(req, res){
    res.writeHead(200, {'Content-Type': 'text/plain'});
 
    // 解析 url 参数
    var params = url.parse(req.url, true).query;
    res.write("网站名:" + params.name);  //输出内容
    res.write("\n");
    res.write("网站 URL:" + params.url);
    res.end();
 
}).listen(3000);

2.post请求

var http = require('http');
var querystring = require('querystring');
var util = require('util');
 
http.createServer(function(req, res){
    // 定义了一个post变量,用于暂存请求体的信息
    var post = '';     
 
    // 通过req的data事件监听函数,每当接受到请求体的数据,就累加到post变量中
    req.on('data', function(chunk){    
        post += chunk;
    });
 
    // 在end事件触发后,通过querystring.parse将post解析为真正的POST请求格式,然后向客户端返回。
    req.on('end', function(){    
        post = querystring.parse(post);
        res.end(util.inspect(post));
    });
}).listen(3000);
posted @ 2020-07-01 19:52  小小咸鱼YwY  阅读(2281)  评论(0编辑  收藏  举报