node.js - 承诺处于待处理状态导致快递服务器未运行
问题描述
在这里,我正在过滤公共 IP,只有当 IP 来自 F_IP、C_IP 时,我才会运行我的服务器。但是发生的情况是我的承诺处于待处理状态( publicIp.v4().then(ip => {; )或者需要一些时间才能启动哪个服务器
结果,服务器没有启动
有什么我做错了吗?
const publicIp = require('public-ip');
const aws = require('aws-sdk');
const s3 = new aws.S3();
async function getFileFromAWS(params){
return s3.getObject(params).promise();
}
function startProcess() {
var config = require('./config');
if (process.env.NODE_ENV != "development") {
let getParams = {
Bucket: 'c',
Key: 'A'
}
getFileFromAWS(getParams).then(configStub => {
let objectData = configStub.Body.toString();
objectData = JSON.parse(objectData);
let fip = objectData.F_IP;
let cip = objectData.C_IP;
let validIps = [fip, cip];
console.log(validIps, "validIps>>>>>>>>>>");
publicIp.v4().then(ip => {
console.log(ip, "========ip=================");
if (validIps.includes(ip)) {
console.log('Starting Server...');
if (process.env.SERVER_ADDR) {
console.log('Region: ', require('s').utils.region.getByServerIp());
console.log('Running on IP: ', process.env.SERVER_ADDR);
}
const PORT = process.env.PORT || config.server.port;
console.log('Listening on Port:', PORT);
return app.listen(PORT);
} else {
console.log('Error handler', err);
res.status(err.status || 500);
return res.send("You need to be on org IP to access the resource.");
}
});
});
}
}
解决方案
推荐阅读
- javascript - JavaScript 创建打字效果
- sql - Mybatis批量插入/更新使用DB2 Merge选项抛出错误
- python - 如何在 div 标签下获取没有类的 li
- c - 如何在C中垂直和水平复制数组?
- javascript - Javascript classList.add 循环不起作用
- bash - 读取嵌套引号中的变量
- android - Is there a way to apply selector icon on Popupmenu?
- ios - 我怎样才能正确地做到这一点?
- spring-boot - 如何在 Spring Boot 中从客户端接收 EnumMap
- java - How do you separate a nested method in a constructor to a separate method