Closed yoodu closed 3 years ago
函数网关不支持流,只能 return 一个 buffer。
函数网关不支持流,只能 return 一个 buffer。
请问一下控制器中,不用 ctx.body=stream 与return stream,使用 stream.pipe(this.ctx.res);
怎么设置才可以有效。
函数里在物理架构层面就没法支持,怎么设置都不会成功的。
函数里在物理架构层面就没法支持,怎么设置都不会成功的。
那midway使用 stream 传输 html,是不是目前无法做到。
在 serverless 场景,无论什么框架都做不到,最终都是变为 buffer 返回。
在 serverless 场景,无论什么框架都做不到,最终都是变为 buffer 返回。
我可能没有表达清楚,不是在serverless 场景,是正常的 nodejs环境中, midway控制器怎样实现 stream.
在 serverless 场景,无论什么框架都做不到,最终都是变为 buffer 返回。
不是在serverless 场景,是正常的 nodejs环境中
@Controller('/')
export class HomeController {
@Get('/')
async home(): Promise<void> {
// stream ,不用 ctx.body=stream 与return stream。
// stream.pipe(this.ctx.res); 页面空白
}
}
请问怎么实现
不能直接 return stream ?
不能直接 return stream ?
https://codesandbox.io/s/kind-sammet-j56ro?file=/server/render.js:1448-1474
这个用的 express
结合 react ssr
我想用 midway
集成 但是,他的流是输出
const stream = renderToPipeableStream(
<DataProvider data={data}>
<App assets={assets} />
</DataProvider>,
{
bootstrapScripts: [assets["main.js"]],
onShellReady() {
// If something errored before we started streaming, we set the error code appropriately.
res.statusCode = didError ? 500 : 200;
res.setHeader("Content-type", "text/html");
stream.pipe(res);
},
onError(x) {
didError = true;
console.error(x);
}
}
);
res
是传入的,所以我想midway
控制器中是必须 ctx.body=stream 或 return stream 吗。
这不是 midway 的限制,是 koa 的规则。
这不是 midway 的限制,是 koa 的规则。
那就是说无解,是这个意思吗?
你可以搜索网上 renderToPipeableStream 和 koa2 结合的例子。
你可以搜索网上 renderToPipeableStream 和 koa2 结合的例子。
在找,所以在这里问下,打扰了。谢谢。
前面加上 ctx.respond = false; 不调用框架的reponse而调用node自己的
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
函数如下,功能是读取云端文件内容压缩后下载
执行后报错如下