プラグイン API の概要
Selenium IDE は、タスクを実行するリクエスト(コマンドの実行または出力)を送信できますが、IDE にタスクの実行を要求することもできます。
Selenium IDE は、HTTP のようなメッセージングプロトコルを実装しています。これがどのように機能するかの概要については、API の呼び出しをご覧ください。
API の構造
API は、機能ドメイン(再生、記録など)ごとに構造化されています。
バージョニング
API の uri
は /
から始まり、バージョン管理されています。現在のライブバージョンは 1 です。バージョンなしで uri
を呼び出すと、最新のバージョンが呼び出されます。
/register
- register 関数の最新バージョン。/v1/register
- registerv1
動詞
API は、HTTP のような動詞 (get
、post
、delete
、put
) をサポートしています。
それぞれが、リソースの異なる機能を決定します。
get
- リソースまたはそれに関する情報を取得します。post
- 新しいリソースを作成します。put
- リソースを更新します。delete
- リソースを削除します。
エラー
リクエストの送信時にウィンドウが閉じている場合、Selenium IDE は応答せず、Promise は拒否されます。
または、Selenium IDE が開いている場合は、Promise を解決して成功するか、エラーをシリアル化できないため、「ユーザーランド」エラーを返します。
接続エラー
IDE ウィンドウが閉じている場合、接続エラーが発生するため、Promise は拒否されます。
browser.runtime.sendMessage(SIDE_ID, payload).catch((error) => {
console.error(error); // connection error
});
リクエストエラー
リクエストエラーは、リクエストが無効な場合、たとえば、fetch のように存在しないリソースのリクエストの場合に発生します。このようなリクエストは、エラーが添付された状態で promise を解決します。
browser.runtime.sendMessage(SIDE_ID, payload).then((response) => {
if (response.error) {
console.error(response.error); // request error
}
});
成功したリクエスト
成功したリクエストは、レスポンスオブジェクトで error
が定義されていないリクエストです。各エンドポイントには独自レスポンスがあり、ほとんどの post
リクエストは成功した場合 true
を返します。
browser.runtime.sendMessage(SIDE_ID, payload).then((response) => {
if (!response.error) {
console.error(response); // true
}
});