1

私は現在、同じサーバーで提供されている別のRest-Methodを呼び出す必要があるRest-Serviceに取り組んでいます。したがって、たとえば、パス/ myPath / fooのメソッドは、パス/ myPath / restApi/barのメソッドに何かを要求する必要があります。

RestTemplate.postForObject(...)メソッドでフルパスを使用せずにSpring RestTemplate(または他の何か)でこれを行うにはどうすればよいですか(アーティファクトのURLとポートが使用されていないため、フルパスは使用できませんアーティファクトを構築するときに知られています)。

ご協力いただきありがとうございます!よろしく、アンディ

4

1 に答える 1

1

まず、2番目のURLの背後にあるサービスメソッドを直接呼び出すのではなく、URLを使用して同じサーバー(同じアプリケーションのように見える)のRESTメソッドにアクセスするのはなぜですか?これが同じサーブレットコンテナであるが、複数のWARファイルである場合は問題ありません。

質問に戻りましょ。ホストとポートがあります。/myPath/fooクライアントがアクセスしようとすると、サーバーはにアクセスする必要があると言っています/myPath/restApi/bar。コントローラ/アクション/ハンドラメソッド/RESTフレームワークが提供するものをHttpServletRequest何とかして取得しているとき。リクエストオブジェクトを使用すると、クライアントが最初のWebサービスへの接続に使用したホストとポートを確認できます。その情報を使用して、同じサーバー上の2番目のWebサービスを呼び出すことができます。

2番目の考え:これが同じサーバーである場合、あなたはただ使用することはできませんlocalhostか?

于 2012-05-23T16:17:21.660 に答える