DyanmoDB DAX低级API

问题描述

是否可以使用DAX客户端打印低级api? 当我使用常规DynamoDB客户端时,它可以正常工作,但在使用DAX客户端时,它无法正常工作。

DynamoDB低级API: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Programming.LowLevelAPI.html

用于打印低级api的示例代码

        const request = this.getDocumentClient().get(getRequest);

        request.on("httpDone",(response) => {
            const debugInfo = {
                retryCount: response.retryCount,redirectCount: response.redirectCount,headers: response.httpResponse.headers,};


        request.send((err: AWSError,data: DocumentClient.GetItemOutput) => {
            if (err) {
                reject(err);
            }
            else {
                resolve(data.Item as T);
            }
        });

解决方法

找到了解决此问题的方法,DAX Client正在使用另一个事件侦听器来捕获http调用。 而不是使用“ httpDone”应该是“ complete” 代码解决方案:

const request = this.getDocumentClient().get(getRequest);

    request.on("complete",(response) => {
        const debugInfo = {
            retryCount: response.retryCount,redirectCount: response.redirectCount,headers: response.httpResponse.headers,};


    request.send((err: AWSError,data: DocumentClient.GetItemOutput) => {
        if (err) {
            reject(err);
        }
        else {
            resolve(data.Item as T);
        }
    });