すべて新機能改善修正
改善

Playgroundのリフレッシュ、リセット、およびオンデマンドでの引き継ぎ

Playgroundをリフレッシュした際、自身の状態が再表示される前に静的な状態が一瞬表示されることがなくなりました。新しいリセットボタン(確認ダイアログを挟みます)により、3つすべてのrequestタブ、cookie、および引き継がれたproxyを一度にクリアできます。また、バックグラウンドで自動的に適用される代わりに、明示的に要求した際に、responseのproxy IDまたはUser-Agentを次のrequestに引き継ぐことができるようになりました。

新機能

各requestの消費クレジットを表示

すべてのAPI responseに、その呼び出しにかかったコストを示すx-foura-credits headerが含まれるようになりました。Dashboardに新しく追加されたBudgetビューでは、クレジットの消費内訳をAPI key、ドメイン、クライアントIPごとにタイムラインチャートで確認でき、Playgroundでも各responseに同様の情報が表示されるため、スケールアップ前にワークロードの規模を見積もることができます。

新機能

FourAブログが7言語に対応

ブログのすべての投稿が、英語、ブルガリア語、ドイツ語、ポーランド語、ベトナム語、中国語、およびアラビア語で表示されるようになりました。コードブロック、Markdown、およびリンクはそのまま保持され、検索ではローカライズされたタイトルが返されます。

改善

response に処理を担当した proxy が反映されるようになりました

各 Single response に request を処理した proxy ID が含まれるようになり、Browser response でも同様になりました。同じ proxy を固定する必要があるチェーンされた呼び出しに便利です。

新機能

アラビア語に対応(RTLサポート)

メインサイトが完全なRTL(右から左)レイアウトでアラビア語表示に対応し、対応ロケールは7つになりました。ブラウザの言語設定がアクセスしたページと一致しない場合、細いバナーが表示され、言語の切り替えを提案します。

改善

ソート可能なカラムと折りたたみ可能なサイドバー

Dashboardのカラムヘッダーをクリックすると、ソートを実行できます。この機能はActivity、API Keys、およびsessionsで動作し、自動更新後もソート状態が維持され、Ctrlクリック(MacではCmd)で選択を解除できます。また、テーブルの表示スペースを広くしたいときは、サイドバーを折りたたんでアイコンレールにすることも可能です。

新機能

BrowserがインタラクティブなTurnstileをエンドツーエンドで突破

インタラクティブなチャレンジウィジェット(一般的なのはマネージドなTurnstileパターンです)でrequestをブロックしているサイトは、unblocker: trueを指定してBrowserを呼び出すと、レンダリングされたHTMLを返すようになりました。以前はチャレンジページを返していた、保護されていることが確認されているサイトに対して、エンドツーエンドで検証済みです。

新機能

サイトとPlaygroundが6言語に対応

ヘッダーの地球儀アイコンから言語を選択してください。サイトとPlaygroundがブルガリア語、中国語、ドイツ語、ポーランド語、ベトナム語、英語に対応し、ブックマークや共有が可能なロケール対応のURLが利用可能になりました。

修正

APIのクロスオリジンアクセスを厳格化

クロスオリジンアクセスを厳格化し、foura.aiのみが資格情報を使用してAPIを呼び出せるようにしました。また、metrics endpointの入力フィルターを強化し、開発専用のフォールバックシークレットを削除しました。既存のインテグレーションに変更はありません。

修正

カスタムvalidateルールを成功としてカウント

request に validate.status.accept を設定した場合、エンジンは許可された非200ステータスを完全な成功として扱います。以前はアクティビティ上でこれらが失敗としてラベル付けされており、利用統計にズレが生じていました。結果は validate の判定に沿うようになり、許可した403は App Fail ではなく成功として表示されます。

改善

ActivityのラベルがOverviewと一致

これまでActivityではApplication_failのような生の結果文字列が表示されていたのに対し、Overviewでは適切な色付きの分かりやすいラベル(App Fail)が表示されていました。現在はActivityでも同じラベルと色が使用されるため、2つのビューの表示内容が統一されました。

修正

Non-UTF-8のページが正しくデコードされるようになりました

Singleを経由してキリル文字、中国語、日本語、またはその他のNon-UTF-8のページをスクレイピングしていた場合、bodyが文字化けして返ってくることがありました。以前は、生のバイトデータが表示される前に、すべてのresponseをUTF-8として強制的にデコードしていました。現在は、responseから文字コード(Content-Type、次に<meta charset>、そしてUTF-8へのフォールバックの順)を読み取り、正しくデコードします。この問題を報告してくれたAlexandar Kanchev (Sensika)氏に感謝いたします。

修正

request をそのまま送り返す偽の proxy を検出

実環境に存在する一部の proxy は、実際には request を転送しません。それらは request をプレーンテキストのサーバーダンプとしてそのまま送り返し、その中身を収集しようとします。現在、response がコードに到達する前にこのパターンを検出できるようになったため、Single、Browser、および Proxy Finder はすべて、ゴミデータを返す代わりに、適切なエラー(または再試行)を返します。

新機能

Playgroundで任意のActivity行をリプレイ

保存されたペイロードを持つすべてのActivity行がクリック可能になりました。ダイアログには完全なrequestとresponseが表示されます(整形表示、コピーボタン付き。bodyが生成される前にエラーとなったrequestには明確なメッセージが表示されます)。「Open in Playground」をクリックすると、その呼び出しが正確にフォームへロードされ、アーカイブされたresponseがすでにレンダリングされた状態になります。これにより、パラメータを微調整して、再構築することなく再実行できます。保存されたペイロードの保存期間は24時間で、キーごとに直近の200件まで保持されます。

改善

すべての API response に request ID が付与されます

認証されたコールには、X-Foura-Request-Id header が付与されるようになりました。これを独自のログに保存しておくことで、任意の request を Activity 内の対応する行と照合したり、サポートに提供してこちら側で何が起きたのかを正確に調査したりできます。