小程序模板网

微信小程序 Node.js (基础十一) 全局对象 & (基础十二) GET/POST请求 ...

发布时间:2018-04-21 09:45 所属栏目:小程序开发教程
微信小程序 Node.js (基础十一) 全局对象
 
  • 在浏览器 JavaScript 中,通常 window 是全局对象。
  • Node.js 中的全局对象是 global,所有全局变量(除了 global 本身以外)都是 global 对象的属性。
  • global 最根本的作用是作为全局变量的宿主。
  • 注意: 永远使用 var 定义变量以避免引入全局变量,因为全局变量会污染 命名空间,提高代码的耦合风险。

__filename 脚本绝对路径

表示当前正在执行的脚本的文件名。它将输出文件所在位置的绝对路径,且和命令行参数所指定的文件名不一定相同。 如果在模块中,返回的值是模块文件的路径。

console.log(__filename);
//  C:\Users\admin\main.js
  • 1
  • 2
  • 1
  • 2

__dirname 脚本所在的目录

表示当前执行脚本所在的目录。

console.log(__dirname);
//  C:\Users\admin
  • 1
  • 2
  • 1
  • 2

setTimeout(cb, ms) 执行一次函数cb

全局函数在指定的毫秒(ms)数后执行指定函数(cb)。  setTimeout() 只执行一次指定函数。  返回一个代表定时器的句柄值。

function printHello(){
   console.log( "Hello, World!");
}
// 两秒后执行以上函数
setTimeout(printHello, 2000);
  • 1
  • 2
  • 3
  • 4
  • 5
  •  

clearTimeout(t) 停止函数t

clearTimeout( t ) 全局函数用于停止一个之前通过 setTimeout() 创建的定时器。 参数 t 是通过 setTimeout() 函数创建的定时器。

function printHello(){
   console.log( "Hello, World!");
}
// 两秒后执行以上函数
var t = setTimeout(printHello, 2000);
clearTimeout(t)
  •  

setInterval(cb, ms) 不停地调用函数cb

  • setInterval(cb, ms) 全局函数在指定的毫秒(ms)数后执行指定函数(cb)。
  • 返回一个代表定时器的句柄值。可以使用 clearInterval(t) 函数来清除定时器。
  • setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。
function printHello(){
   console.log( "Hello, World!");
}
// 两秒后执行以上函数
setInterval(printHello, 2000);
  •  

process 一个与操作系统的简单接口

process 是一个全局变量,即 global 对象的属性。  它用于描述当前Node.js 进程状态的对象,提供了一个与操作系统的简单接口。通常在你写本地命令行程序的时候,少不了要和它打交道。

 

微信小程序 Node.js (基础十二) GET/POST请求

var http = require("http")
var url = require("url")
var util = require("util")
var querystring = require("querystring")

function start(){
    //    获取GET请求内容
    this.getRequest = function(){
        http.createServer(function(request,response){
            var pathname = url.parse(request.url).pathname
            console.log(pathname)

            response.writeHead(200,{"Content-Type":"text/plain"})
            response.write("Hello World")

            // http://127.0.0.1:8888/user?name=12456
            // util.inspect(object) 将任意对象转换 为字符串
            // url.parse 将一个URL字符串转换成对象并返回

            response.end(util.inspect(url.parse(request.url,true)));
            response.end(url.parse(request.url,true).query.name);
        }).listen(8888)
    }
    //    获取POST请求内容
    this.postRequst = function (){
        http.createServer(function (req, res) {
          var body = "";
          req.on('data', function (chunk) {
            body += chunk;
          });
          req.on('end', function () {
            // 设置响应头部信息及编码
            res.writeHead(200, {'Content-Type': 'text/html; charset=utf8'});
            //  {"name":"123","address":"123123"}
            console.log(body)

            //  querystring.parse 将一个字符串反序列化为一个对象
            //  { '{"name":"123","address":"123123"}': '' }
            console.log(querystring.parse(body))

            //  JSON.parse(string)  将字符串转为JS对象。
            //  JSON.stringify(obj) 将JS对象转为字符串。
            //  { name: '123', address: '123123' }
            console.log(JSON.parse(body))

            body = JSON.parse(body)
                res.write("网站名:" + body.name);
                res.write("
");
                res.write("网站 URL:" + body.address);
            res.end();
          });
        }).listen(3000);
    }
}
module.exports = start
  •  
var Util = require("./util")
var util = new Util ();
util.postRequst();


易优小程序(企业版)+灵活api+前后代码开源 码云仓库:starfork
本文地址:https://www.eyoucms.com/wxmini/doc/course/23851.html 复制链接 如需定制请联系易优客服咨询:800182392 点击咨询
QQ在线咨询