【问题标题】:Lagom Send custom headerLagom 发送自定义标头
【发布时间】:2018-08-03 15:42:45
【问题描述】:

我正在使用 Lagom POC 向 Non lagom 服务 发送带有自定义 Header 的 POST 请求。就我而言,我正在尝试使用 postman-echo 来测试自定义标题。 但是,尽管我相应地进行了代码更改,但看起来标题并未设置:

public CompletionStage<DsapAuthorizationResponse> hitAPI(AuthorizationRequest request) {
            DsapWSRequest dsapWSRequest = new DsapWSRequest();
            dsapWSRequest.username = request.username;
            dsapWSRequest.password = request.password;
            CompletionStage<DsapAuthorizationResponse> dsapresponse = dsapExternalService
                    .authenticate()
                    .handleRequestHeader(requestHeader -> {
                        requestHeader.withHeader("Authorization","Basic mncndsjna");
                        System.out.println("My Headers>>>>>>>> " + requestHeader);
                        return requestHeader;
                    })
                    .handleResponseHeader((responseHeader,b) -> {
                        System.out.println("RESPonse Header >>>>>>> : "+responseHeader);
                        return b;
                    })
                    .invoke(dsapWSRequest);
            return dsapresponse;

        }

在上面的代码中,请求头中没有设置授权。我没有在我的 POJO 中正确映射的 echo 中获取此标头。

这是来自我的 GitHub 的完整代码 https://github.com/sourabhsar/Lagom-Unmanaged-Service-Demo/tree/poc/lagom-request-response

我按照此处提到的步骤操作: https://groups.google.com/forum/#!topic/lagom-framework/yvKmqvtZWFs

并且还关注了其他一些博客/文章。 但是到目前为止,我还没有找到任何博客,他们使用自定义标头向 unmanaged external service 发送请求。我不确定我的代码有什么问题。

【问题讨论】:

    标签: java lagom


    【解决方案1】:

    requestHeader.withHeader 返回一个带有添加标头的 new 对象,但您编写的代码返回原始的 requestHeader 对象。通常,许多 Lagom API 遵循使用不可变对象的原则,其方法返回一个新的、修改后的实例,而不是更改调用该方法的实例。

    试试这个:

    .handleRequestHeader(requestHeader -> {
        RequestHeader modifiedRequestHeader =
            requestHeader.withHeader("Authorization","Basic mncndsjna");
        System.out.println("My Headers>>>>>>>> " + modifiedRequestHeader);
        return modifiedRequestHeader;
    })
    

    【讨论】:

    • 这应该记录在案,API 返回不可变对象。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-26
    • 2014-07-07
    • 2013-08-28
    • 2015-08-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多