Question
『HTTP要求』アクティビティで特定のURLを指定してGETメソッドでファイルをダウンロードしようとしたところ、以下のエラーメッセージが出力されてダウンロードに失敗します。
タイムアウト値を延長しても改善しません。
エラーメッセージ:
「操作がタイムアウトしました」
Answer
以下のいずれかの回避策をお試しください。
回避策A:
『ファイルを URL からダウンロード』アクティビティを使用します。(英語名:Download File From URL)
ダウンロード対象のファイルのURLとファイルの出力変数を設定することでファイルをダウンロードします。
尚、当該のアクティビティはUiPath.System.Activities v23.10以降で追加されている新しいアクティビティです。ご利用の場合は、UiPath.System.Activitiesをv23.10.x以上に更新する必要があります。
また、UiPath.System.Activities側にもStudioに対する要件があり、UiPath.System.Activities v23.10以降を使用する場合はUiPath Studioのバージョンが v22.10.5以上である必要があります。
参考:
「ファイルを URL からダウンロード」
「リリースノート > ワークフローに関するアクティビティ > v23.10.2 > 新着情報」
回避策B:
『HTTP要求』アクティビティの代わりに『Powershellを呼び出し』アクティビティを使用し、PowerShellスクリプトの中でInvoke-RestMethodを実行してファイルをダウンロードします。
PowerShellスクリプトは以下のような構成になります。
param (
[string]$DownloadURL,
[string]$DownloadPath
)
Invoke-RestMethod -Uri $DownloadURL -OutFile $DownloadPath -StatusCodeVariable status
Write-Output $status
PowerShellスクリプトと呼び出しているサンプルワークフローはこちらです。
DownloadFileViaPowershell.zip (3.3 KB)
作成環境:
UiPath Studio v23.10.3
UiPath.System.Activities v23.10.3