2017-01-16 37 views
1

サブドメインがワイルドカードである場合、Springの@RequestMappingでサブドメインにアクセスできるかどうかは疑問です。Spring @RequestMappingでワイルドカードサブドメインを取得する

たとえば、任意の数のサブドメインが要求されたときに呼び出されるメソッドを作成し、その人が要求した実際のサブドメインを取得できるようにしたいと思います。

したがって、sub1.example.comにアクセスすると、「sub1」をString変数にマップできるメソッドが表示されます。

そして、もし彼らがsub2.example.comを訪れたら、前の例と同じ方法でヒットし、 "sub2"をString変数にマップすることもできます。

これは可能ですか?私は春のMVCでこのアプローチだったのセトリング終わった何

答えて

1

@RequestMapping(value="/someUrl") 
public String someControllerMethod(ModelMap model, HttpServletRequest request) 
{ 
    String subdomain = request.getServerName().split("\\.")[0]; 

    log.info("subdomain is: " + subdomain); 

    // more code here 
} 

私はちょうど方法にはHttpServletRequestを渡した後、要求からサブドメインを抽出するようにしてください。このコードの唯一の問題は、サブドメインにドット(。)を付けることができないことです(それ以外の場合は、サブドメインの最初の部分のみを取り上げます)。

このソリューションは私のニーズに対応しています。しかし、あなたがより良い解決策を持っていれば、それを投稿してもいいと思います。それが正しいとすれば、私はそれを正解とします。

関連する問題