Передача заголовка Host в Grails Rest Builder - PullRequest
0 голосов
/ 14 января 2020

У меня есть внутренний шлюз API, который мы вызываем из VP C ...

Случай 1) Сбой при 403 при вызове с использованием Grails rest Builder {"message": "запрещено "}

def rest = новый RestBuilder (connectTimeOut: connectTimeOut, readTimeOut: readTimeOut) def response = rest.post ('https://vpce-ytyttsfa9f4a11-ssssssfx.execute-api.us-east- 1.fdd.amazon aws .com / dev / xxxx / ') {auth' aaaa ',' zzz 'applicationType' header / json 'header (' Host ',' xxxxxxxxx.execute-api.us-east-1.amazon aws. com ') json {inputPayload}}

Case2: Использование org. apache .http.client.methods.HttpPost работает нормально:

HttpPost post = new HttpPost("https://vpce-06490cdb1idsidjakshdyy.execute-api.us-east-1.vpxxs.amazonaws.com/dev/receivelppoint");

        String userCredentials = "xxxx:xxx";
        String basicAuth = "Basic " + new String(Base64.getEncoder().encode(userCredentials.getBytes()));

        post.setHeader("Host", "assdadasdxxx.execute-api.us-east-1.amazonaws.com" );
        post.setHeader("Authorization", basicAuth);
        post.setHeader("Content-Type", "application/json");


        StringEntity params =new StringEntity(" {\n" +
                " \t\"submitter\": \"SUBS\",\n" +
                " \t\"productDesc\": \"wassup united\",\n" +
                " \t\"referenceId\": \"/partnerOrderNo:xxx/xxx/transaction:xxxx/itemKey:xxxx\"\n" +
                " }");
        post.setEntity(params);

        CloseableHttpClient httpClient = HttpClients.createDefault()
        CloseableHttpResponse response1 = httpClient.execute(post)

            System.out.println(EntityUtils.toString(response1.getEntity()));

Я думаю, что проблема заключается в Если Grails Rest Builder не позволяет настроить заголовок хоста, есть идеи, как мы можем настроить заголовок хоста в Grails Rest Builder? Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...