Я пытаюсь настроить модуль teamspeak 3 для моего сайта WHMCS.API-интерфейс Teamspeak 3 «Невозможно GET /»
Я сделал все правильно в соответствии с учебным пособием. Но у меня также есть API, закодированный в узле, который работает с модулем. Когда я обращаюсь к 0.0.0.0:3000 Я получаю сообщение об ошибке «Can not GET /» Мой брандмауэр выключен, поэтому он не может быть заблокированным портом. Это мой 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;
И когда я пытаюсь получить доступ, например, http://0.0.0.0:3000/list я получаю эту ошибку «{» результат «:» ошибка «„сообщение“:„Invalid аутентификации маркер“}»
Так что, очевидно, что-то не так. Я новичок в узле, поэтому не могу понять, в чем проблема.
Это мой 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> узла server.js Api вебсервис работает на 0.0.0.0:3000 Tsdns работает на 0.0.0.0:41144
Так он говорит, что работает, и я не получают ошибок, этот API также не имеет журналов ошибок. Это папка API CLICK HERE TO SEE IT
Если вы хотите, чтобы мне удалось поделиться более кодами API, тогда я буду.
Спасибо, что ответили, я загляну в него. –
Подождите секунду, вы тот, кто создал этот апи? Если у вас есть время, пожалуйста, помогите мне заставить его работать. –
Я уже объяснил, как работает api. Если у вас возникли проблемы с настройкой аддона whmcs, который соединяется с api, вы должны связаться с продавцом продавцов whmcs. – nathanr