问题标签 [koa2]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
koa - 如何将中间件应用于所有路由?
我想如何将中间件应用于 koa-route 中的所有路径,例如
它像这样返回路径 += str.slice(index, offset) ^
TypeError: str.slice is not a function 有什么提示吗?谢谢!
node.js - 使用 Docker Swarm 时优雅地关闭 nodejs 微服务
我有多个以Nodejs Koa
运行方式编写的微服务Docker Swarm
。
由于 Kubernetes 或 Swarm 之类的容器编排工具可以立即扩展和缩减服务,所以我有一个问题是优雅地关闭 Nodejs 服务以防止未完成的运行过程。
以下是我能想到的流程:
- 向每个工作进程发送一个 SIGNINT 信号,当缩减服务时,docker swarm 是否发送
SIGNINT
给工作人员? 工作人员负责捕捉信号,清理或释放任何已使用的资源并完成其进程,我如何停止新的 api 请求,等待任何正在运行的进程完成后再关闭?
下面的一些代码来自参考:
/li>
node.js - 将值从中间件传递到 Koa 2 中的视图
我正在尝试从我的 Koa 2 中间件获取 var 值以显示在我的 pug 模板(或其他)中。例如在 koa-sessions 我有:
另一个例子,响应时间:
根据原始指令,这是可行的,但我不想使用正文/控制台,而是将其用作模板变量,因此在我的路由器/控制器中,我将拥有:
这些都不起作用。它是否与 async/await 相关,所以它没有及时获得值或者它是一些语法问题?请温柔一点,因为我是新手。:)
node.js - Supertest 测试后不关闭 Koa 服务器
我有 koaapp
和 jest 测试框架,app
由 mongo 包装http.createServer
并连接到
测试超测后不要关闭服务器,测试示例
angular - 前端和后端无法通信
我正在使用 node js 中的 koa 框架编写一个全栈应用程序作为后端,使用 angular 4 作为前端。问题是,当我通过前端在后端 API 上发出发布请求时(即当我想登录时),我得到一个带有文本“发生网络错误”和代码 19 的 DOM 异常。后端本身工作正常(我已经用邮递员测试过)。这是我的 Angular 代码片段,其中包括我发出请求的服务方法和处理响应的组件方法。
服务方式:
组件方法:
koa2 - Koa2:中间层组合多个 REST API 调用
我正在研究如何使用 node.js 作为中间层将多个 REST API 调用组合成单个请求。(这样就省去了浏览器和服务器之间的往返)
首先,我使用了express
框架和request-promise
库,找到了如下解决方案:
该解决方案promise
基于request-promise
返回一个承诺,它允许我将 3 个 API 调用和 merge 链接在一起data1
,data2
并且data3
如上所述。
在Koa2(async/await)
如何做到这一点?
编辑,找到解决方案如下:
node.js - 节点(Koa)不在 HTTPS 连接上提供静态文件
尝试通过 https 连接在节点 (koa) 服务器上请求静态 css 样式表失败。在 http 上运行良好。
HTTP 工作正常:
- http://www.example.com/assets/css/style.913142291ae94ed177988e5dfc67c66e.css提供文件,工作正常,样式表加载到应用程序。mime 类型是“文本/css”
HTTPS 失败
- https://www.example.com/assets/css/style.913142291ae94ed177988e5dfc67c66e.css下载文件,css 服务不正确。mime 类型为“应用程序/八位字节流”
问题仅发生在 Safari 浏览器、旧版 Chrome 浏览器上。但不会发生在最新的 Chrome 浏览器上。
这是怎么回事?
这是 Context 对象的日志,显示 https 协议上的响应 404:
更新
通过 ReactQL 样板的 Node js 应用程序代码。完整代码在这里:https ://github.com/reactql/kit/blob/master/kit/entry/server.js#L131
Nginx 配置
更新 2 我在 nginx 代理顶部有一个 AWS 负载均衡器,将所有 443 流量重定向到 80。
node.js - Koa.js 等到执行完成
在我的应用程序中,我使用 express 作为 node.js 的框架,并使用 mssql 连接到我的数据库。
现在,我尝试使用 Koa.js 框架而不是 express。我尝试使用“Koa-router”调用该服务,但它返回“内部服务器错误”。
当我尝试使用控制台对其进行调试时,控制台包含预期的结果,但变量在查询执行完成之前返回。
我在 app.js 中使用了路由器:
我的控制器页面是单独的,如下所示:
请让我知道我必须在哪里进行更改才能获得预期的结果。(执行完成后得到结果)
angularjs - Koa.js 渲染 Angular html 页面
我试图使用 Koa.js 而不是 node.js 的 express。
在 express 中,我们使用了 render 函数来获取 html 页面。
我尝试使用以下代码从 Koa.js 访问 Angular html 页面:
但是上面的代码显示索引页面,因为它没有样式,并且没有渲染 ng-view 数据
另外,我尝试添加如下共同视图
但是,我没有得到预期的结果。它还显示上述页面。
请帮助获得预期的结果。
javascript - Koa.js 和流媒体。你如何处理错误?
有人使用 koa.js 和流吗?
考虑这个例子
如果用户中止请求,我会得到
或者
处理此类错误的正确方法是什么?
PS在使用 express 中止请求后我没有错误
PPS我试过
但它没有任何效果。