0

我正在尝试使用 Mule SDK 实施 Mule 4.x 策略。为此,我需要在策略操作实现中调用外部 API。外部 API 响应返回的结果将确定策略输出。

public class MyMulePolicyOperations
{
    @MediaType( value = ANY, strict = false )
    public void handle(
            @Config MyMulePolicyConfiguration configuration,
            @Alias( "httpRequestMethod" ) String httpRequestMethod,
            CompletionCallback<String, HttpResponse> callback ) throws Exception
    {
        HttpResponseBuilder httpResponseBuilder = HttpResponse.builder();

        String result = // call an external API and extract "result" from the response

        if ( result.equals( configuration.getMyConfigValue() ) )
        {
            httpResponseBuilder.addHeader( "allow_request", "true" );
        }
        else
        {
            httpResponseBuilder.addHeader( "allow_request", "false" );
        }

        Result<String, HttpResponse> result = Result.<String, HttpResponse> builder()
                .attributes( httpResponseBuilder.build() )
                .build();

        callback.success( result );
    }

}

有人可以告诉我如何使用 Mule SDK 实现 REST 客户端吗?

4

1 回答 1

0

如果您想在使用 Mule SDK 创建的自定义模块中实现 HTTP 请求,则必须使用文档中所述的 HTTP 客户端:https ://docs.mulesoft.com/mule-sdk/1.1/HTTP -based-connectors#use-the-mule-http-client

您没有提供任何理由或需要在自定义模块中实现请求。使用自定义策略中的 HTTP 请求器执行 HTTP 请求会更容易。

于 2020-03-14T22:13:10.457 回答