serverhttp2session.origin(...origins)
向连接的客户端提交 ORIGIN
帧(由 RFC 8336 定义),以通告服务器能够为其提供权威响应的源集。
const http2 = require('node:http2');
const options = getSecureOptionsSomehow();
const server = http2.createSecureServer(options);
server.on('stream', (stream) => {
stream.respond();
stream.end('ok');
});
server.on('session', (session) => {
session.origin('https://example.com', 'https://example.org');
});
当字符串作为 origin
传入时,则它会被解析为 URL 并导出来源。
例如,HTTP URL 'https://example.org/foo/bar'
的来源是 ASCII 字符串 'https://example.org'
。
如果给定的字符串无法解析为 URL,或者无法导出有效的来源,则会抛出错误。
URL
对象,或任何具有 origin
属性的对象,都可以作为 origin
传入,在这种情况下,将使用 origin
属性的值。
origin
属性的值_必须_是正确序列化的 ASCII 源。
或者,在使用 http2.createSecureServer()
方法创建新的 HTTP/2 服务器时可以使用 origins
选项:
const http2 = require('node:http2');
const options = getSecureOptionsSomehow();
options.origins = ['https://example.com', 'https://example.org'];
const server = http2.createSecureServer(options);
server.on('stream', (stream) => {
stream.respond();
stream.end('ok');
});
Submits an ORIGIN
frame (as defined by RFC 8336) to the connected client
to advertise the set of origins for which the server is capable of providing
authoritative responses.
const http2 = require('node:http2');
const options = getSecureOptionsSomehow();
const server = http2.createSecureServer(options);
server.on('stream', (stream) => {
stream.respond();
stream.end('ok');
});
server.on('session', (session) => {
session.origin('https://example.com', 'https://example.org');
});
When a string is passed as an origin
, it will be parsed as a URL and the
origin will be derived. For instance, the origin for the HTTP URL
'https://example.org/foo/bar'
is the ASCII string
'https://example.org'
. An error will be thrown if either the given string
cannot be parsed as a URL or if a valid origin cannot be derived.
A URL
object, or any object with an origin
property, may be passed as
an origin
, in which case the value of the origin
property will be
used. The value of the origin
property must be a properly serialized
ASCII origin.
Alternatively, the origins
option may be used when creating a new HTTP/2
server using the http2.createSecureServer()
method:
const http2 = require('node:http2');
const options = getSecureOptionsSomehow();
options.origins = ['https://example.com', 'https://example.org'];
const server = http2.createSecureServer(options);
server.on('stream', (stream) => {
stream.respond();
stream.end('ok');
});