Skip to content

Commit

Permalink
2023/04/08 時点の英語版に同期
Browse files Browse the repository at this point in the history
  • Loading branch information
mfuji09 committed Sep 22, 2023
1 parent 2db0b85 commit bdb3c11
Showing 1 changed file with 41 additions and 14 deletions.
55 changes: 41 additions & 14 deletions files/ja/web/api/readablebytestreamcontroller/error/index.md
Original file line number Diff line number Diff line change
@@ -1,40 +1,67 @@
---
title: ReadableByteStreamController.error()
title: "ReadableByteStreamController: error() メソッド"
short-title: error()
slug: Web/API/ReadableByteStreamController/error
l10n:
sourceCommit: c58e8c1dd6ecbcb63894c7dd17fb9495b9511b4e
---

{{SeeCompatTable}}{{APIRef("Streams")}}
{{APIRef("Streams")}}

{{domxref("ReadableByteStreamController")}} インターフェイスの **`error()`** メソッドにより、関連するストリームとの今後のやり取りがエラーになります。
**`error()`** は {{domxref("ReadableByteStreamController")}} インターフェイスのメソッドで、関連するストリームとの今後のやり取りを、指定した理由でエラーとします。

これは一般的に、データを取得するインターフェイスからのエラー(ファイル読み込みやソケットエラーなど)を表面化するために、基盤から呼び出されます。
また、例えばストリームが依存しているシステムの別の部分に障害が発生した場合など、ストリームエラーを発生させるために他の場所から呼び出すこともできます。

## 構文

```
readableByteStreamController.error(e);
```js-nolint
error(errorObject)
```

### パラメーター
### 引数

- _e_
- : 今後のやり取りを失敗させるエラー
- `errorObject`
- : 今後のやり取りを失敗させるための任意のオブジェクトです

### 戻り値
### 返値

`undefined`
なし ({{jsxref("undefined")}}).

### 例外

- TypeError
- {{jsxref("TypeError")}}
- : ソースオブジェクトが `ReadableByteStreamController` ではないか、何らかの理由でストリームが読み取り可能ではありません。

##

未定。
[読み取り可能なバイトストリームの使用 > 読み取り可能なソケットプッシュバイトストリームの作成](/ja/docs/Web/API/Streams_API/Using_readable_byte_streams#読み取り可能なソケットプッシュバイトストリームの作成) の例では、`error()` を使用して、依存しているシステムの別の部分に障害が発生した場合に手動でストリームエラーを発生させる方法を示しています。

具体的には、基盤ソースの `start()` メソッドは `readRepeatedly()` を呼び出して、すべてのセットアップ処理を行い、データのリクエストを行います。
これはプロミスを返します。
データを読み込む際に発生したエラーは、連鎖する `catch()` 関数で捕捉されます。
`catch()` では、コントローラーの `error()` を呼び出して、その理由を基盤から渡します。

```js
function start(controller) {
readRepeatedly().catch((e) => controller.error(e));
}

## 仕様
function readRepeatedly() {
return socket.select2().then(() => {
//
});
}
```

## 仕様書

{{Specifications}}

## ブラウザーの互換性

{{Compat("api.ReadableByteStreamController.error")}}
{{Compat}}

## 関連情報

- [読み取り可能なバイトストリームの使用](/ja/docs/Web/API/Streams_API/Using_readable_byte_streams)

0 comments on commit bdb3c11

Please sign in to comment.