「ファイルコンテンツの取得」アクションで謎のエラーが出ました。
{
"status": 400,
"message": "Route did not match\r\nclientRequestId: 3c82b01f-a249-4c0a-ad50-444144e5592f\r\nserviceRequestId: 3c82b01f-a249-4c0a-ad50-444144e5592f"
}
「ファイルコンテンツの取得」アクションでエラーになることはまずないため日本語のTipsまわりの記事は何もHITせず、英単語検索で以下の投稿にたどり着きました。
サーバがうまく動いてなかった、で解決扱いになった後に匿名さんが投稿してくれている事象と今回発生した事象が似ていましたが解決に至らず投稿が途切れていました。
「更新をしたファイルコンテンツを取り直さないとダメだよ」というところは実装済だったので「詰んだわ、、」と打ちひしがれました。
たまたま原因と対処法が見つかる
リストアイテムへの添付を諦めて次の作りこみをしようと(Office Scriptsを利用していたので)「セルのロックのプロパティを付けれるのかな」と検索をかけていると平野愛さんのブログタイトルが見えたのです。
奇跡!(本当に集中線が見えました。線はフリーハンド)
原因はこれじゃないか?(=ファイルのロック)と。
実装あるのみ
平野さんのページの引用先にHTTP400のステータスコードは雑だから(400を返す条件や返答メッセージがばらばら)とのことなので、"Route"のメッセージがなくなったらIsFileLocked=false
とする処理を追加してうまくいきました。
平野さんには足を向けて寝れません。
待ち時間の実装で実行時間に差が発生
待ち時間(30秒)を入れておくか、ファイルコンテンツの取得アクションが失敗しても処理を続けるよう条件を設定しDo Untilの実行回数(既定は60回)を増やして対処するかは各自のご判断で。
Do Untilのタイムアウトについて