public class ServletUriComponentsBuilder extends UriComponentsBuilder
注意 : このクラスは、クライアントから発信されたプロトコルを反映するために、存在する場合、"Forwarded" (RFC 7239)、"X-Forwarded-Host"、"X-Forwarded-Port"、"X-Forwarded-Proto" ヘッダーの値を使用します。とアドレス。ForwardedHeaderFilter を使用して、抽出して使用するか、このようなヘッダーを破棄するかを中央から選択することを検討してください。このフィルターの詳細については、Spring Framework リファレンスを参照してください。
| 修飾子 | コンストラクターと説明 |
|---|---|
protected | ServletUriComponentsBuilder() デフォルトコンストラクター。 |
protected | ServletUriComponentsBuilder(ServletUriComponentsBuilder other) 指定された ServletUriComponentsBuilder のディープコピーを作成します。 |
build, build, build, build, buildAndExpand, buildAndExpand, clone, encode, encode, fragment, fromHttpRequest, fromHttpUrl, fromOriginHeader, fromPath, fromUri, fromUriString, host, newInstance, path, pathSegment, port, port, query, queryParam, queryParams, replacePath, replaceQuery, replaceQueryParam, replaceQueryParams, scheme, schemeSpecificPart, toUriString, uri, uriComponents, uriVariables, userInfoprotected ServletUriComponentsBuilder()
protected ServletUriComponentsBuilder(ServletUriComponentsBuilder other)
other - コピー元の他のビルダー public static ServletUriComponentsBuilder fromContextPath(HttpServletRequestEE request)
注意 : 5.1 の時点で、このメソッドはクライアント発信アドレスを指定する "Forwarded" および "X-Forwarded-*" ヘッダーを無視します。ForwardedHeaderFilter を使用して、そのようなヘッダーを抽出して使用するか、破棄することを検討してください。
public static ServletUriComponentsBuilder fromServletMapping(HttpServletRequestEE request)
サーブレットが名前でマップされている場合、例: "/main/*"、パスは "/main" で終わります。サーブレットが別のメソッドでマップされている場合、たとえば "/" または "*.do" の場合、結果は fromContextPath(HttpServletRequest) を呼び出す場合と同じになります。
注意 : 5.1 の時点で、このメソッドはクライアント発信アドレスを指定する "Forwarded" および "X-Forwarded-*" ヘッダーを無視します。ForwardedHeaderFilter を使用して、そのようなヘッダーを抽出して使用するか、破棄することを検討してください。
public static ServletUriComponentsBuilder fromRequestUri(HttpServletRequestEE request)
注意 : 5.1 の時点で、このメソッドはクライアント発信アドレスを指定する "Forwarded" および "X-Forwarded-*" ヘッダーを無視します。ForwardedHeaderFilter を使用して、そのようなヘッダーを抽出して使用するか、破棄することを検討してください。
public static ServletUriComponentsBuilder fromRequest(HttpServletRequestEE request)
注意 : 5.1 の時点で、このメソッドはクライアント発信アドレスを指定する "Forwarded" および "X-Forwarded-*" ヘッダーを無視します。ForwardedHeaderFilter を使用して、そのようなヘッダーを抽出して使用するか、破棄することを検討してください。
public static ServletUriComponentsBuilder fromCurrentContextPath()
RequestContextHolder を介してリクエストが取得されることを除いて、fromContextPath(HttpServletRequest) と同じです。注意 : このメソッドは、"Forwarded" および "X-Forwarded-*" ヘッダーから値が見つかった場合に抽出します。クラスレベルのドキュメントを参照してください。
4.3.15 以降、このメソッドは contextPath を先頭に追加するのではなく、"X-Forwarded-Prefix" の値に置き換えて、ForwardedHeaderFilter と揃えます。
public static ServletUriComponentsBuilder fromCurrentServletMapping()
RequestContextHolder を介してリクエストが取得されることを除いて、fromServletMapping(HttpServletRequest) と同じです。注意 : このメソッドは、"Forwarded" および "X-Forwarded-*" ヘッダーから値が見つかった場合に抽出します。クラスレベルのドキュメントを参照してください。
4.3.15 以降、このメソッドは contextPath を先頭に追加するのではなく、"X-Forwarded-Prefix" の値に置き換えて、ForwardedHeaderFilter と揃えます。
public static ServletUriComponentsBuilder fromCurrentRequestUri()
RequestContextHolder を介してリクエストが取得されることを除いて、fromRequestUri(HttpServletRequest) と同じです。注意 : このメソッドは、"Forwarded" および "X-Forwarded-*" ヘッダーから値が見つかった場合に抽出します。クラスレベルのドキュメントを参照してください。
4.3.15 以降、このメソッドは contextPath を先頭に追加するのではなく、"X-Forwarded-Prefix" の値に置き換えて、ForwardedHeaderFilter と揃えます。
public static ServletUriComponentsBuilder fromCurrentRequest()
RequestContextHolder を介してリクエストが取得されることを除いて、fromRequest(HttpServletRequest) と同じです。注意 : このメソッドは、"Forwarded" および "X-Forwarded-*" ヘッダーから値が見つかった場合に抽出します。クラスレベルのドキュメントを参照してください。
4.3.15 以降、このメソッドは contextPath を先頭に追加するのではなく、"X-Forwarded-Prefix" の値に置き換えて、ForwardedHeaderFilter と揃えます。
protected static HttpServletRequestEE getCurrentRequest()
RequestContextHolder を介して現在のリクエストを取得します。@Nullable public java.lang.String removePathExtension()
requestURIEE からパス拡張子を削除します。UriComponentsBuilder.path(String) または UriComponentsBuilder.pathSegment(String...) を呼び出す前に、このメソッドを呼び出す必要があります。
GET http://foo.com/rest/books/6.json
ServletUriComponentsBuilder builder = ServletUriComponentsBuilder.fromRequestUri(this.request);
String ext = builder.removePathExtension();
String uri = builder.path("/pages/1.{ext}").buildAndExpand(ext).toUriString();
assertEquals("http://foo.com/rest/books/6/pages/1.json", result);
nullpublic ServletUriComponentsBuilder cloneBuilder()
UriComponentsBuilderUriComponentsBuilder を複製します。UriComponentsBuilder の cloneBuilder UriComponentsBuilder オブジェクト