画面遷移のパラメータの限界[Outsystems]

2022-06-17

まず前提として

Outsystemsで普通に実装できるパラメータとブロックに追加する方法はGet。(だからパラメータとしてストラクチャーなどList的なのを渡せない)
要するに、パラメータが増えれば増えるほどURLが長くなる。

Inparamというパラメータを作成した場合のURL

今回はそんなoutsystemsにパラメータ最長&中に大量の日本語文字列を投入してありえないくらい長いURLを作成したらエラーになるのかどうかを調べてみます。

パラメータ100個最大長にしてみた

こんな感じでパラメータを100個。
ちなみにパラメータ名の最大長は60バイトでした。

こちら、全てTEXTで作成し、中には大量の日本語を入れました。
日本語1文字=9バイトなのでそれなりに長いURLが生成されるはず。

問題なくパブリッシュできてしまったのでアクセスしてみます。

ページもエラーが出ないことを確認。

サクラエディタにパスを貼り付けたら、18万バイトでした。Outsystemsのモジュール内でパス最大長でエラーになることはまずなさそう

もしパスの長さが原因でエラーになった場合は

今回こちらはデプロイなどせずにOutsystemsの初期の環境そのままで検証しています。
別の環境にデプロイする場合、今回と同じことをするとエラーが発生する可能性があります。

例えばIISだとパスの最大長が初期値は4ギガバイトになっています。

問題 クエリ文字列の長いURLにアクセスしたら、404 Not Found になりました。 答え IISマネージャー → 要求フィルター → クエリ文字列 → …
www.softel.co.jp