tencent cloud

Tencent Cloud EdgeOne

Request

ダウンロード
フォーカスモード
フォントサイズ
最終更新日: 2026-11-04 10:29:57
AI翻訳・品質チェック済み
RequestはHTTPリクエストオブジェクトを表し、Web APIs標準Requestに基づいて設計されています。
説明
エッジ関数では、2つの方法でRequestオブジェクトを取得できます:
Requestコンストラクタを使用してRequestオブジェクトを作成し、Fetch APIの操作に使用します。
FetchEventオブジェクトevent.requestを使用して、現在のリクエストのRequestオブジェクトを取得します。

コンストラクタ

new Request(input: string | Request, initOptions?: RequestInit): Request

パラメータ

パラメータ名
タイプ
必須
説明
input
string | Request
はい
URL文字列またはRequestオブジェクト。
initOptions
いいえ
Requestオブジェクトの初期化設定項目。

RequestInit

Requestオブジェクトのプロパティ値オプションを初期化します。
パラメータ名
タイプ
必須
デフォルト値
説明
method
string
いいえ
GET
リクエストメソッド(GET、POSTなど)。
headers
いいえ
-
リクエストヘッダー情報。
body
string |Blob | ArrayBuffer | ArrayBufferView |ReadableStream
いいえ
-
リクエストボディ。
redirect
string
いいえ
follow
リダイレクトポリシーは、manual、error、followをサポートします。
maxFollow
number
いいえ
12
最大リダイレクト回数。
version
string
いいえ
HTTP/1.1
HTTPバージョンは、HTTP/1.0、HTTP/1.1、HTTP/2.0をサポートします。
copyHeaders
boolean
いいえ
-
Web API標準オプションではなく、渡されたRequestオブジェクトのheadersをコピーするかどうかを示します。
eo
いいえ
-
Web API標準オプションではなく、エッジ関数がこのリクエストを処理する動作を制御するために使用します。

RequestInitEoProperties

Web APIs標準以外のオプションで、エッジ関数がこのリクエストを処理する動作を制御するために使用されます。
パラメータ名
タイプ
必須
説明
resolveOverride
string
いいえ
fetchリクエストで既存のドメイン名解決を上書きするために使用され、ドメイン名またはIPアドレスの指定をサポートします。詳細は次のとおりです。
IPにはschemeおよびポート番号を含めることはできません。
IPv6では角括弧で囲む必要はありません。
注意:fetchがEdgeOneノードキャッシュへのアクセスまたはオリジンアクセスの条件を満たす場合、このフィールドは有効になりません。
image
いいえ
Image Processingパラメータの設定項目です。
cacheKey
string
いいえ
カスタムキャッシュキーは、Cache APIのキャッシュ読み書きに使用されます。指定後、関連するキャッシュ操作は、EdgeOneサイトキャッシュと相互に分離されたエッジ関数独立キャッシュを使用します。指定方法と有効化ルールの詳細はキャッシュ空間を参照してください。
timeoutSetting
いいえ
fetchリクエストでタイムアウト時間を設定するための構成です。
tls
いいえ
fetchリクエストでTLS関連の設定を行うために使用します。
注意:fetchがEdgeOneノードキャッシュへのアクセスまたはオリジンアクセスの条件を満たさない場合のみ、このフィールドは有効になります。

RequestInitEoTimeoutSettingProperties

fetchタイムアウト時間オプション。
説明:
fetchの接続確立がタイムアウトした場合、net_exception_connect_timeout例外がスローされます。fetchのレスポンス読み取りまたはリクエスト送信がタイムアウトした場合、net_exception_timeout例外がスローされます。
パラメータ名
タイプ
必須
デフォルト値
説明
connectTimeout
number
いいえ
3000
接続確立のタイムアウト時間、単位:ミリ秒、最大300000までサポートします。
readTimeout
number
いいえ
3000
レスポンス読み取りのタイムアウト時間、単位:ミリ秒、最大300000までサポートします。
writeTimeout
number
いいえ
15000
リクエスト送信のタイムアウト時間、単位:ミリ秒、最大300000までサポートします。

RequestInitEoTlsProperties

fetch TLS関連オプションは、fetchがEdgeOneノードキャッシュまたはオリジンサーバーへのアクセスの条件を満たさない場合にのみ有効になります。
パラメータ名
タイプ
必須
説明
cert
string
いいえ
クライアント証明書、PEM形式。
key
string
いいえ
クライアント証明書とペアになる秘密鍵、PEM形式。
ca
string
いいえ
オリジンサーバー証明書に対応するCA証明書、PEM形式。

インスタンス属性

body

// request.body
readonly body: ReadableStream;
リクエストボディです。詳細はReadableStreamを参照してください。

bodyUsed

// request.bodyUsed
readonly bodyUsed: boolean;
リクエストボディが読み取られたかどうかを示します。

headers

// request.headers
readonly headers: Headers;
リクエストヘッダーです。詳細はHeadersを参照してください。

method

// request.method
readonly method: string;
リクエストメソッドです。デフォルト値はGETです。

redirect

// request.redirect
readonly redirect: string;
リクエストリダイレクトポリシーです。指定可能な値はfollow、error、manualで、デフォルトはfollowです。
注意:
デフォルトのリダイレクトポリシーfollowは、一部のシナリオで問題を引き起こす可能性があります。詳細はリダイレクトを参照してください。

maxFollow

// request.maxFollow
readonly maxFollow: number;
リクエストの最大リダイレクト回数です。

url

// request.url
readonly url: string;
リクエストURLです。

version

// request.version
readonly version: string;
リクエストで使用されるHTTPプロトコルバージョンです。

eo

// request.eo
readonly eo: IncomingRequestEoProperties;
エッジ関数が提供する、現在のリクエストに関連するその他の情報です。詳細はIncomingRequestEoPropertiesを参照してください。

IncomingRequestEoProperties

クライアントリクエストevent.requestオブジェクトにはeoプロパティが含まれており、その情報は以下の通りです:
パラメータ名
タイプ
説明
サンプル値
geo
クライアントリクエストの位置情報を説明します。
-
tls
クライアントリクエストのTLS関連情報を説明します。
このフィールドは、クライアントリクエストがTLSリクエストである場合にのみ値が設定されます。
-
clientIp
string
クライアントリクエストのIPアドレスです。
192.168.1.1
clientPort
number
クライアントリクエストのポート番号です。
-
httpProtocol
string
クライアントリクエストのHTTPプロトコルバージョンです。
HTTP/1.1
uuid
string
リクエストの一意な識別子であり、EO-LOG-UUIDと同じ役割を持ちます。
-

GeoProperties

クライアントリクエストの位置情報を記述します。
パラメータ名
タイプ
説明
サンプル値
asn
number
ASN。
132203
continent
string
大州名。
Asia
countryName
string
国名。
Singapore
countryCodeAlpha2
string
国のISO-3166 alpha2コード。
SG
countryCodeAlpha3
string
国のISO-3166 alpha3コード。
SGP
countryCodeNumeric
string
国のISO-3166 numericコード。
702
regionName
string
リージョン名。
-
regionCode
string
リージョンコード。
AA-AA
cityName
string
都市名。
Singapore
latitude
number
緯度。
1.29027
longitude
number
経度。
103.851959

TlsProperties

クライアントリクエストのTLS関連情報を記述します。
パラメータ名
タイプ
説明
サンプル値
version
string
クライアントがリクエストしたTLSバージョンです。
TLS1.3
cipher
string
クライアントがリクエストしたTLS暗号スイートです。
TLS_AES_256_GCM_SHA384
clientAuth
クライアント証明書に関する情報を説明します。
このフィールドは、クライアントが証明書リクエストを送信する場合にのみ値が設定されます。
-
clientCiphersSha1
string
クライアントがTLSハンドシェイク中にClientHelloで送信するcipher_suitesリストのSHA-1ハッシュ値(Base64エンコード)で、ビッグエンディアン形式でエンコードされます。
-
clientExtensionsSha1
string
クライアントがTLSハンドシェイク中にClientHelloで送信するextensionsリストのSHA-1ハッシュ値(Base64エンコード)で、ビッグエンディアン形式でエンコードされます。
-
clientExtensionsSha1Le
string
クライアントがTLSハンドシェイク中にClientHelloで送信するextensionsリストのSHA-1ハッシュ値(Base64エンコード)で、リトルエンディアン形式でエンコードされます。
-
clientHelloLength
string
クライアントがTLSハンドシェイク中に送信するClientHelloメッセージのバイト長です。
-
clientRandom
string
クライアントがTLSハンドシェイク中にClientHelloで送信する32バイトのrandomフィールド(Base64エンコード)です。
-

TlsClientAuthProperties

クライアント証明書の関連情報を記述します。
パラメータ名
タイプ
説明
サンプル値
certPresented
string
クライアントが実際に証明書を送信したかどうかを示します。
値は常に「1」です。
1
certVerified
string
クライアント証明書の検証結果。
値は「SUCCESS」(検証成功)と「FAILED」(検証失敗)の2つのみです。
SUCCESS
certIssuerDN
string
クライアント証明書の発行者の一意の識別名(Distinguished Name、DN)で、RFC 4514形式です。
-
certSubjectDN
string
クライアント証明書の主体者の一意の識別名(Distinguished Name、DN)で、RFC 4514形式です。
-
certIssuerDNRFC2253
string
クライアント証明書の発行者の一意の識別名(Distinguished Name、DN)で、RFC 2253形式です。
-
certSubjectDNRFC2253
string
クライアント証明書の主体者の一意の識別名(Distinguished Name、DN)で、RFC 2253形式です。
-
certIssuerDNLegacy
string
クライアント証明書の発行者の一意の識別名(Distinguished Name、DN)で、Open SSL従来形式です。
-
certSubjectDNLegacy
string
クライアント証明書の主体者の一意の識別名(Distinguished Name、DN)で、Open SSL従来形式です。
-
certSerial
string
クライアント証明書のシリアル番号。
-
certIssuerSerial
string
このクライアント証明書を発行したCA証明書自体のシリアル番号(発行者証明書のserialNumberフィールド)です。
-
certSKI
string
クライアント証明書の主体キー識別子(Subject Key Identifier、SKI)。
-
certIssuerSKI
string
クライアント証明書の発行者の主体キー識別子(Subject Key Identifier、SKI)。
-
certFingerprintSHA1
string
クライアント証明書のSHA-1フィンガープリント。
-
certFingerprintSHA256
string
クライアント証明書のSHA-256フィンガープリント。
-
certNotBefore
string
クライアント証明書の有効開始時刻で、OpenSSLの慣例的な表示形式(ISO 8601ではありません)です。
Jan 01 00:00:00 2026 GMT
certNotAfter
string
クライアント証明書の失効時刻で、OpenSSLの慣例的な表示形式(ISO 8601ではありません)です。
Jan 01 00:00:00 2026 GMT
certPublicKeyAlgorithm
string
クライアント証明書の公開鍵アルゴリズムタイプで、値は「RSA」、「DSA」、「EC」、「ED25519」、「SM2」、および「Other」です。
-
certPublicKeyAlgorithmLongName
string
クライアント証明書の公開鍵アルゴリズムの長い名前で、OpenSSLのアルゴリズムの長い名前をそのまま渡します。
-
certPublicKeyAlgorithmShortName
string
クライアント証明書の公開鍵アルゴリズムの短い名前で、OpenSSLのアルゴリズムの短い名前をそのまま渡します。
-

インスタンスメソッド

注意
リクエストボディを取得するメソッドは、HTTPボディの最大バイト数として1MBを受け取ります。サイズを超えるとOverSize例外がスローされます。サイズを超える場合は、request.bodyによるストリーミング読み取りを推奨します。詳細はReadableStreamを参照してください。

arrayBuffer

request.arrayBuffer(): Promise<ArrayBuffer>;
リクエストボディを取得し、解析結果はArrayBufferです。

blob

request.blob(): Promise<Blob>;
リクエストボディを取得し、解析結果はBlobです。

clone

request.clone(copyHeaders?: boolean): Request;
Requestオブジェクトのコピーを作成します。

パラメータ

パラメータ名
タイプ
必須
説明
copyHeaders
boolean
いいえ
リクエストヘッダーをコピーします。デフォルト値は false です。値の説明は以下のとおりです。
true
元オブジェクトのリクエストヘッダーをコピーします。
false
元オブジェクトのリクエストヘッダーを参照します。

formData

request.formData(): Promise<FormData>;
リクエストボディを取得して解析した結果はFormDataです。

json

request.json(): Promise<object>;
リクエストボディを取得し、解析結果はJSONです。

text

request.text(): Promise<string>;
リクエストボディを取得し、解析結果はテキスト文字列です。

サンプルコード

async function handleRequest() {
const request = new Request('https://www.tencentcloud.com/');
const response = await fetch(request);
return response;
}

addEventListener('fetch', (event) => {
event.respondWith(handleRequest());
});

関連参考

ヘルプとサポート

この記事はお役に立ちましたか?

フィードバック