encodeURIComponent

DataWeave 2.1 は Mule 4.1 と互換性があります。 Mule 4.1 の標準サポートは 2020 年 11 月 2 日に終了しました。このバージョンの Mule は、拡張サポートが終了する 2022 年 11 月 2 日にその​​すべてのサポートが終了します。

このバージョンの Mule を使用する CloudHub には新しいアプリケーションをデプロイできなくなります。許可されるのはアプリケーションへのインプレース更新のみになります。

標準サポートが適用されている最新バージョンの Mule 4 にアップグレード​することをお勧めします。これにより、最新の修正とセキュリティ機能強化を備えたアプリケーションが実行されます。

encodeURIComponent(String): String

UTF-8 エンコーディングを使用して、URI コンポーネント内の特定の文字をエスケープします。

2 つのサロゲート文字で構成される文字には、4 つのエスケープシーケンスのみを使用できます。​encodeURIComponent​ は、アルファベット、10 進数、​- _ . ! ~ * ' ( )​ を​除く​すべての文字をエスケープします。 encodeURIComponent​ は ​encodeURI​ とは異なり、​encodeURI​ の予約文字と番号記号 ​#​ をエンコードします。

含まれるもの

予約文字

エスケープされない文字

アルファベット、10 進数、- _ . ! ~ * ' ( )

番号記号

パラメータ

名前 説明

text

URI コンポーネント文字列。

次の例では、さまざまな URI コンポーネントをエンコードします。

ソース

%dw 2.0
import * from dw::core::URL
output application/json
---
{
  "comparing_encode_functions_output" : {
  	"encodeURIComponent" : encodeURI(" PATH/ TO /ENCODE "),
  	"encodeURI" : encodeURI(" PATH/ TO /ENCODE "),
  	"encodeURIComponent_to_hex" : encodeURIComponent(";,/?:@&="),
  	"encodeURI_not_to_hex" : encodeURI(";,/?:@&="),
  	"encodeURIComponent_not_encoded" : encodeURIComponent("-_.!~*'()"),
  	"encodeURI_not_encoded" : encodeURI("-_.!~*'()")
  }
}

出力

{
  "comparing_encode_functions_output": {
    "encodeURIComponent": "%20PATH/%20TO%20/ENCODE%20",
    "encodeURI": "%20PATH/%20TO%20/ENCODE%20",
    "encodeURIComponent_to_hex": "%3B%2C%2F%3F%3A%40%26%3D",
    "encodeURI_not_to_hex": ";,/?:@&=",
    "encodeURIComponent_not_encoded": "-_.!~*'()",
    "encodeURI_not_encoded": "-_.!~*'()"
  }
}