serverless - 无服务器脱机无法脱机运行:无法加载资源:net::ERR_CONNECTION_REFUSED
问题描述
问题
未连接到 Internet 时,我无法让无服务器脱机运行。
无服务器.yml
service: my-app
plugins:
- serverless-offline
# run on port 4000, because client runs on 3000
custom:
serverless-offline:
port: 4000
# app and org for use with dashboard.serverless.com
app: my-app
org: my-org
provider:
name: aws
runtime: nodejs10.x
functions:
getData:
handler: data-service.getData
events:
- http:
path: data/get
method: get
cors: true
isOffline: true
saveData:
handler: data-service.saveData
events:
- http:
path: data/save
method: put
cors: true
isOffline: true
要离线启动无服务器,我serverless offline start
在终端中运行。这在我连接到互联网时有效,但在离线时,我收到以下错误:
控制台错误
:4000/data/get:1 Failed to load resource: net::ERR_CONNECTION_REFUSED
20:34:02.820 localhost/:1 Uncaught (in promise) TypeError: Failed to fetch
终端错误
FetchError: request to https://api.serverless.com/core/tenants/{tenant}/applications/my-app/profileValue failed, reason: getaddrinfo ENOTFOUND api.serverless.com api.serverless.com:443
要求
我怀疑原因是因为我不确定如何使用指令设置离线:“传递给您的 λs 的事件对象有一个额外的键:{ isOffline: true }
。而且,process.env.IS_OFFLINE
是真的。”
任何有关如何调试问题的帮助将不胜感激。
解决方案
可能您已经修复了它,但问题是因为 app 和 org 属性
# app and org for use with dashboard.serverless.com
app: my-app
org: my-org
当你使用它时,serverless 将使用 serverless.com 上设置的配置,通常是 env var。
要使用 env var,您可以使用插件 serverless-dotenv-plugin。这样,您无需连接互联网。
推荐阅读
- sql - db2 查询多种情况
- angular - 使用 RXJS 和 Angular 进行简单的表格过滤
- javascript - 如何将 Javascript 中的对象数组解构为 ES6 中的两个预定义变量?
- sql-server - 如何使用来自 Google Big Query 的文件在 SQL Server 中使用批量导入?
- java - 当引用的方法抛出异常时,如何以方法为参数调用另一个方法?
- npm - npm inssue babelify@10.0.0 需要 @babel/core@^7.0.0 的 peer
- java - JAVA 如何在java中追加一个列表和TableView?
- c# - 在项目中查找程序集依赖项
- javascript - 如何在单选按钮中从数据库加载值?
- reactjs - ESLint Prefer default export import/prefer-default-export