Javascript Teamspeak 3模块API“;无法获取/quot;

Javascript Teamspeak 3模块API“;无法获取/quot;,javascript,node.js,api,whmcs,teamspeak,Javascript,Node.js,Api,Whmcs,Teamspeak,我正在尝试为我的WHMCS网站设置teamspeak 3模块 根据教程,我做的每件事都是对的。 但我还有一个在节点中编码的API,它与模块一起工作。 当我访问0.0.0.0:3000时,我得到错误“无法获取” 我的防火墙已关闭,因此它不能是任何被阻止的端口。 这是我的api.js "use strict"; var sqlite3 = require('sqlite3').verbose(); var db = new sqlite3.Database('tsdns.sqlite'); var

我正在尝试为我的WHMCS网站设置teamspeak 3模块

根据教程,我做的每件事都是对的。 但我还有一个在节点中编码的API,它与模块一起工作。 当我访问0.0.0.0:3000时,我得到错误“无法获取” 我的防火墙已关闭,因此它不能是任何被阻止的端口。 这是我的api.js

"use strict";
var sqlite3 = require('sqlite3').verbose();
var db = new sqlite3.Database('tsdns.sqlite');
var express = require('express');
var app = express();
var config = require('./config.json');

db.serialize(function() {
  db.run("CREATE TABLE IF NOT EXISTS zones (id integer primary key, zone varchar(100),target varchar(50))");
});

app.get('/list', function (req, res) {
  if( req.headers.authorization == config.api_key ){
    var zone = req.params.zone;
    db.all("SELECT * FROM zones", function(err, rows) {
      res.send('{"result":"success","message":' + JSON.stringify( rows ) + '}');
    });
  }else{
    res.statusCode = 403;
    res.send('{"result":"error","message":"Invalid auth token"}');
  }
});

app.get('/add/:zone/:target', function (req, res) {
  if( req.headers.authorization == config.api_key ){
    var zone = req.params.zone;
    var target = req.params.target;
    var sql = "INSERT INTO zones(zone,target) VALUES(?,?)";
    var stmt = db.prepare(sql,zone,target);
    stmt.run();
    stmt.finalize();
    res.statusCode = 201;
    res.send('{result:"success"}');
  }else{
    res.statusCode = 403;
    res.send('{"result":"error","message":"Invalid auth token"}');
  }
});

app.get('/del/:zone', function (req, res) {
  if( req.headers.authorization == config.api_key ){
    var zone = req.params.zone;
    var sql = "DELETE FROM zones WHERE zone =?";
    var stmt = db.prepare(sql,zone);
    stmt.run();
    stmt.finalize();
    res.statusCode = 202;
    res.send('{result:"success"}');
  }else{
    res.statusCode = 403;
    res.send('{"result":"error","message":"Invalid auth token"}');
  }
});

app.get('/get/:zone', function (req, res) {
  if( req.headers.authorization == config.api_key ){
    var zone = req.params.zone;
    db.all("SELECT * FROM zones WHERE zone=?",zone, function(err, row) {
      res.statusCode = 200;
      res.send('{"result":"success","message":' + JSON.stringify( row ) + '}');
    });
  }else{
    res.statusCode = 403;
    res.send('{"result":"error","message":"Invalid auth token"}');
  }
});

module.exports = app;
当我试图访问,例如,我得到这个错误 {“结果”:“错误”,“消息”:“无效的身份验证令牌”}

所以很明显有些地方出了问题。我是node的新手,所以我不知道问题出在哪里

这是我的server.js

var config = require('./config.json');
var api = require('./api.js');
var tsdns = require('./tsdns');

api.listen(config.api_port,config.api_ip, function () {
  console.log('Api webservice running at %s:%s', config.api_ip, config.api_port);
});

tsdns.listen(config.tsdns_port,config.tsdns_ip, function () {
  console.log('Tsdns running at %s:%s', config.tsdns_ip,config.tsdns_port);
});
这就是我希望API运行时应该开始的,然后它会这样说

C:\Users\Administrator>node server.js Api webservice以0.0.0.0:3000运行 运行于0.0.0.0:41144的Tsdns

所以它说它正在运行,我没有收到任何错误,这个API也没有任何错误日志。 这是API文件夹

如果你想让我分享更多的API代码,我会的。

没有“/”的获取路径,这就是为什么你会得到这个消息。api应仅预期来自whmcs插件的请求,例如:

http://yourdomain.com/get/yourdnszone

还必须在请求头中发送身份验证令牌。

谢谢您的回答,我会调查一下。等一下,您是创建此api的人吗?如果您有时间,请帮助我使它工作。我已经解释了api是如何工作的。如果您在设置与api连接的whmcs插件时遇到问题,您应该联系whmcs插件销售商支持。我已经有很长一段时间遇到这个问题,我曾经修复过一次,但我不记得是如何修复的。这里有一些细节,我可能做错了什么。这个呢