首页 > 解决方案 > 不能将函数作为属性 javascript

问题描述

我试图向nodejs中的属性添加一个函数,这是我的主要内容:

  const http = require('http');
const url = require('url');
const fs = require('fs');
const vpas = require('./auth');

http.createServer(function (req, res) {
    var q = url.parse(req.url, true);
    var filename = "." + q.pathname;
    fs.readFile(filename, function (err, data) {
        if (err) {
            res.writeHead(404, { 'Content-Type': 'text/html' });
            return res.end("404 Not Found");
        }
        else {
            if (vpas.verify("asd", "asd")) {
                res.write(req.url);
            }
            res.writeHead(200, { 'Content-Type': 'text/html' });
            res.write(data);
            return res.end();
        }

    });
}).listen(80);

重要的是 vpas.verify,即引发错误的属性。

这是身份验证模块:

    var verifyPassword = function (name, password) {
    if (String(name) == String(password)) {
        return true;
    }
}


exports.auth = {
    verify: verifyPassword
};

我不明白为什么它抛出错误 vpas.verify 不是一个函数。请帮助我,我找不到解决方案。

标签: javascriptfunctionproperties

解决方案


导致其:

 vpas.auth.verify

vpas指向导出,然后将auth属性设置为它。


推荐阅读