Browse Source

AXY_API_URL

pull/3/head
yuan_yi 3 years ago
parent
commit
64fa1bc28c
  1. 3
      code/VideoAccess-VCMP/api/.vscode/launch.json
  2. 4
      code/VideoAccess-VCMP/api/app/lib/index.js
  3. 65
      code/VideoAccess-VCMP/api/app/lib/service/paasRequest.js
  4. 45
      code/VideoAccess-VCMP/api/app/lib/service/request.js
  5. 5
      code/VideoAccess-VCMP/api/config.js

3
code/VideoAccess-VCMP/api/.vscode/launch.json

@ -17,7 +17,8 @@
"-f http://localhost:4000", "-f http://localhost:4000",
"-g postgres://postgres:123@10.8.30.32:5432/video_access", "-g postgres://postgres:123@10.8.30.32:5432/video_access",
"--redisHost 127.0.0.1", "--redisHost 127.0.0.1",
"--redisPort 6379" "--redisPort 6379",
"--axyApiUrl http://127.0.0.1:4100"
] ]
}, },
{ {

4
code/VideoAccess-VCMP/api/app/lib/index.js

@ -3,11 +3,9 @@
const routes = require('./routes'); const routes = require('./routes');
const redisConnect = require('./service/redis') const redisConnect = require('./service/redis')
const socketConect = require('./service/socket') const socketConect = require('./service/socket')
const paasRequest = require('./service/paasRequest');
const authenticator = require('./middlewares/authenticator'); const authenticator = require('./middlewares/authenticator');
// const apiLog = require('./middlewares/api-log'); // const apiLog = require('./middlewares/api-log');
const paasRequest = require('./middlewares/paasRequest');
module.exports.entry = function (app, router, opts) { module.exports.entry = function (app, router, opts) {
app.fs.logger.log('info', '[FS-AUTH]', 'Inject auth and api mv into router.'); app.fs.logger.log('info', '[FS-AUTH]', 'Inject auth and api mv into router.');

65
code/VideoAccess-VCMP/api/app/lib/service/paasRequest.js

@ -0,0 +1,65 @@
'use strict';
const request = require('superagent')
class paasRequest {
constructor(root) {
this.root = root;
}
#buildUrl = (url) => {
return `${this.root}/${url}`;
}
#resultHandler = (resolve, reject) => {
return (err, res) => {
if (err) {
reject(err);
} else {
resolve(res.body);
}
};
}
get = (url, { query, header = {} }) => {
return new Promise((resolve, reject) => {
request.get(this.#buildUrl(url)).set(header).query(query).end(this.#resultHandler(resolve, reject));
})
}
post = (url, data, query) => {
return new Promise((resolve, reject) => {
request.post(this.#buildUrl(url, this.root)).set(header).query(query).send(data).end(this.#resultHandler(resolve, reject));
})
}
put = (url, data) => {
return new Promise((resolve, reject) => {
request.put(this.#buildUrl(url)).set(setHeader()).send(data).end(this.#resultHandler(resolve, reject));
})
}
delete = (url) => {
return new Promise((resolve, reject) => {
request.delete(this.#buildUrl(url)).set(setHeader()).end(this.#resultHandler(resolve, reject));
})
}
}
function factory (app, opts) {
if (opts.pssaRequest) {
try {
for (let r of opts.pssaRequest) {
if (r.name && r.root) {
app.fs[r.name] = new paasRequest(r.root)
} else {
throw 'opts.pssaRequest 参数错误!'
}
}
} catch (error) {
console.error(error)
process.exit(-1);
}
}
}
module.exports = factory;

45
code/VideoAccess-VCMP/api/app/lib/service/request.js

@ -1,45 +0,0 @@
const request = require('superagent')
module.exports = class paasRequest {
constructor(root, ctx) {
this.root = root;
}
#buildUrl = (url) => {
return `${this.root}/${url}`;
}
#resultHandler = (resolve, reject) => {
return (err, res) => {
if (err) {
reject(err);
} else {
resolve(res.body);
}
};
}
get = (url, { query, header = {} }) => {
return new Promise((resolve, reject) => {
request.get(this.#buildUrl(url)).set(header).query(query).end(this.#resultHandler(resolve, reject));
})
}
post = (url, data, query) => {
return new Promise((resolve, reject) => {
request.post(this.#buildUrl(url, this.root)).set(header).query(query).send(data).end(this.#resultHandler(resolve, reject));
})
}
put = (url, data) => {
return new Promise((resolve, reject) => {
request.put(this.#buildUrl(url)).set(setHeader()).send(data).end(this.#resultHandler(resolve, reject));
})
}
delete = (url) => {
return new Promise((resolve, reject) => {
request.delete(this.#buildUrl(url)).set(setHeader()).end(this.#resultHandler(resolve, reject));
})
}
}

5
code/VideoAccess-VCMP/api/config.js

@ -14,6 +14,7 @@ args.option(['f', 'fileHost'], '文件中心本地化存储: WebApi 服务器地
args.option('redisHost', 'redisHost'); args.option('redisHost', 'redisHost');
args.option('redisPort', 'redisPort'); args.option('redisPort', 'redisPort');
args.option('redisPswd', 'redisPassword'); args.option('redisPswd', 'redisPassword');
args.option('axyApiUrl', 'axyApiUrl'); // 安心云 api
const flags = args.parse(process.argv); const flags = args.parse(process.argv);
@ -24,6 +25,8 @@ const IOTA_REDIS_SERVER_HOST = process.env.IOTA_REDIS_SERVER_HOST || flags.redis
const IOTA_REDIS_SERVER_PORT = process.env.IOTA_REDIS_SERVER_PORT || flags.redisPort || "6379";//redis 端口 const IOTA_REDIS_SERVER_PORT = process.env.IOTA_REDIS_SERVER_PORT || flags.redisPort || "6379";//redis 端口
const IOTA_REDIS_SERVER_PWD = process.env.IOTA_REDIS_SERVER_PWD || flags.redisPswd || "";//redis 密码 const IOTA_REDIS_SERVER_PWD = process.env.IOTA_REDIS_SERVER_PWD || flags.redisPswd || "";//redis 密码
const AXY_API_URL = process.env.AXY_API_URL || flags.axyApiUrl;
if (!IOT_VIDEO_ACCESS_DB || !IOTA_REDIS_SERVER_HOST || !IOTA_REDIS_SERVER_PORT) { if (!IOT_VIDEO_ACCESS_DB || !IOTA_REDIS_SERVER_HOST || !IOTA_REDIS_SERVER_PORT) {
console.log('缺少启动参数,异常退出'); console.log('缺少启动参数,异常退出');
args.showHelp(); args.showHelp();
@ -55,7 +58,7 @@ const product = {
}, },
pssaRequest: [{ // name 会作为一个 request 出现在 ctx.app.fs pssaRequest: [{ // name 会作为一个 request 出现在 ctx.app.fs
name: 'axyRequest', name: 'axyRequest',
root: 'http://127.0.0.1:4100' root: AXY_API_URL
}] }]
} }
} }

Loading…
Cancel
Save