Node.js 如何使用AWS post lambda打开web浏览器

Node.js 如何使用AWS post lambda打开web浏览器,node.js,amazon-web-services,post,aws-lambda,Node.js,Amazon Web Services,Post,Aws Lambda,我已经编写了以下代码: static async postSearchResult(httpContext: HttpContext, injector: Injector) { const log = injector.get(Log); const service = injector.get(Service); try { let result = await service.redirectToUI(JSON.parse(httpContext.g

我已经编写了以下代码:

static async postSearchResult(httpContext: HttpContext, injector: Injector) {
    const log = injector.get(Log);
    const service = injector.get(Service);
    try {
        let result = await service.redirectToUI(JSON.parse(httpContext.getRequestBody()));

        httpContext.ok(result, 200, {'Content-Type': 'application/json'});
    } catch (e) {
        httpContext.fail(e, 500);
    }
}

protected redirectToUI(response: any) {
    // If any post api call happened then it should open web browser and pass some field as query parameter
    window.open("https://www.google.com?abc=response.abc");
    return response ? response : "failed";
}
这里我得到了以下错误:

执行失败引用错误:未定义窗口


我做错了什么?

你试图完成的事情没有多大意义。Lambda是一种后端服务。要打开新的浏览器窗口,您需要使用前端JavaScript,而不是后端节点(在后端,您无法访问前端
窗口
对象)


如果要打开一个新的浏览器窗口作为对某个后端响应的响应,那么可以在HTTP响应中发送一些指示符(即
shouldOpenNewWindow:true
作为响应对象的一部分),在前端解析该响应,如果指示符存在,则可以发出
window.open
命令。但是它必须在前端完成。

你试图完成的事情没有多大意义。Lambda是一种后端服务。要打开新的浏览器窗口,您需要使用前端JavaScript,而不是后端节点(在后端,您无法访问前端
窗口
对象)


如果要打开一个新的浏览器窗口作为对某个后端响应的响应,那么可以在HTTP响应中发送一些指示符(即
shouldOpenNewWindow:true
作为响应对象的一部分),在前端解析该响应,如果指示符存在,则可以发出
window.open
命令。但必须在前端完成。

改进措辞和改进措辞