HTTPリクエストアクションのURLクエリで、日本時間のタイムゾーンをそのまま指定したらエラー「DateTime parameter is invalid」が起きたので、対処方法をメモ。
やりたいこと
URIパラメータで時間を指定できるHTTPリクエスト(OutlookのcalendarViewなど)で、日本時間などのタイムゾーンを指定したいときの話。


このタイムゾーンの指定が入ったリクエストを実行するとエラーが発生する。


原因と解決方法
原因は文字「+」や「:」で、この「+」はURIにおいて空白文字として解釈されるし、「:」は予約文字になっている。
そのため、タイムゾーンを指定するときはuriComponent関数を使用して、パーセントエンコーディングする必要がある。
使用箇所が多い場合は事前に「作成」アクションとかで定義しておくと便利だし、


使用箇所が少ない場合は、直接式を入力してもOK。


実行すると「+09:00」が「%2B09%3A00」に変換されて、リクエストが成功する。


コメント