Aracılığıyla paylaş


Client class

IoT Hub hizmet istemcisi, bir Azure IoT hub'ı aracılığıyla cihazlarla iletişim kurmak için kullanılır. SDK kullanıcısının şunları yapmasını sağlar:

  • cihazlara buluttan cihaza (komut olarak da bilinir) gönderme: komutlar IoT Hub'da kuyruğa alınır ve yalnızca cihaz bağlandığında zaman uyumsuz olarak teslim edilir. Cihaz başına yalnızca 50 komut kuyruğa alınabiliyor.
  • cihazlarda doğrudan yöntemleri çağırma (yalnızca cihaz şu anda bağlıysa çalışır: cihazla iletişim kurmanın zaman uyumlu bir yoludur)
  • önceki komutlar için cihazlar tarafından gönderilen geri bildirim iletilerini dinleyin.
  • cihazlardan dosya yükleme bildirimlerini dinleyin.

Kullanıcıların, IoT Hub hizmet İstemcisi oluşturmak için, Fabrika yöntemlerinden birini çağırarak yeni örnekleri oluşturması, ConnectionString veyaSharedAccessSignature'dan oluşturması gerekir.

Extends

EventEmitter

Yöntemler

close()
close(IncomingMessageCallback<Disconnected>)

IoT hub'ına bağlantıyı kapatır.

fromConnectionString(string, TransportCtor)

Varsayılan aktarım (Amqp) veya ikinci bağımsız değişkende belirtilen bağlantı dizesinden bir IoT Hub hizmet istemcisi oluşturur.

fromSharedAccessSignature(string, TransportCtor)

Varsayılan aktarım (Amqp) veya ikinci bağımsız değişkende belirtileni kullanarak verilen paylaşılan erişim imzasından bir IoT Hub hizmet istemcisi oluşturur.

fromTokenCredential(string, TokenCredential, TransportCtor)

Varsayılan taşımayı (Amqp) veya ikinci bağımsız değişkende belirtileni kullanarak verilen Azure tokenCredential'dan bir IoT Hub hizmet istemcisi oluşturur.

getFeedbackReceiver()
getFeedbackReceiver(IncomingMessageCallback<ServiceReceiver>)

İstemci tarafından yeni geri bildirim iletileri alındığında olayları yayan bir AmqpReceiver nesnesi döndürür.

getFileNotificationReceiver()
getFileNotificationReceiver(IncomingMessageCallback<ServiceReceiver>)

İstemci tarafından yeni dosya karşıya yükleme bildirimleri alındığında olayları yayan bir AmqpReceiver nesnesi döndürür.

invokeDeviceMethod(string, DeviceMethodParams)
invokeDeviceMethod(string, DeviceMethodParams, IncomingMessageCallback<any>)

Belirli bir cihaz veya modülde bir yöntemi çağırır.

invokeDeviceMethod(string, string, DeviceMethodParams)
invokeDeviceMethod(string, string, DeviceMethodParams, IncomingMessageCallback<any>)
open()
open(IncomingMessageCallback<Connected>)

IoT hub'ına bağlantıyı açar.

send(string, Message | BufferConvertible)
send(string, Message | BufferConvertible, IncomingMessageCallback<MessageEnqueued>)

Bir cihaza ileti gönderir.

setRetryPolicy(RetryPolicy)

İstemci tarafından ağ işlemlerini yeniden denemek için kullanılan ilkeyi ayarlayın.

Devralınan Yöntemler

addListener<E>(string | symbol, (args: any[]) => void)

emitter.on(eventName, listener)için diğer ad.

emit<E>(string | symbol, any[])

eventNameadlı olay için kaydedilen dinleyicilerin her birini, kaydedildikleri sırayla zaman uyumlu olarak çağırır ve sağlanan bağımsız değişkenleri her birine geçirir.

Olayın dinleyicileri varsa true döndürür, aksi takdirde false.

import { EventEmitter } from 'node:events';
const myEmitter = new EventEmitter();

// First listener
myEmitter.on('event', function firstListener() {
  console.log('Helloooo! first listener');
});
// Second listener
myEmitter.on('event', function secondListener(arg1, arg2) {
  console.log(`event with parameters ${arg1}, ${arg2} in second listener`);
});
// Third listener
myEmitter.on('event', function thirdListener(...args) {
  const parameters = args.join(', ');
  console.log(`event with parameters ${parameters} in third listener`);
});

console.log(myEmitter.listeners('event'));

myEmitter.emit('event', 1, 2, 3, 4, 5);

// Prints:
// [
//   [Function: firstListener],
//   [Function: secondListener],
//   [Function: thirdListener]
// ]
// Helloooo! first listener
// event with parameters 1, 2 in second listener
// event with parameters 1, 2, 3, 4, 5 in third listener
eventNames()

Vericinin dinleyicileri kaydettiği olayları listeleyen bir dizi döndürür.

import { EventEmitter } from 'node:events';

const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});

const sym = Symbol('symbol');
myEE.on(sym, () => {});

console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
getMaxListeners()

EventEmitter veya varsayılan olarak emitter.setMaxListeners(n)olarak ayarlanan events.defaultMaxListeners için geçerli en yüksek dinleyici değerini döndürür.

listenerCount<E>(string | symbol, (args: any[]) => void)

eventNameadlı olayı dinleyen dinleyici sayısını döndürür. listener sağlanırsa, dinleyicinin olay dinleyicileri listesinde kaç kez bulunduğunu döndürür.

listeners<E>(string | symbol)

eventNameadlı olay için dinleyici dizisinin bir kopyasını döndürür.

server.on('connection', (stream) => {
  console.log('someone connected!');
});
console.log(util.inspect(server.listeners('connection')));
// Prints: [ [Function] ]
off<E>(string | symbol, (args: any[]) => void)

emitter.removeListener()için diğer ad.

on<E>(string | symbol, (args: any[]) => void)

listener işlevini eventNameadlı olay için dinleyiciler dizisinin sonuna ekler. listener eklenip eklenmediğini görmek için denetim yapılmaz. aynı eventName ve listener birleşimini geçen birden çok çağrı, listener birden çok kez eklenmesine ve çağrılmasını sağlar.

server.on('connection', (stream) => {
  console.log('someone connected!');
});

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

Varsayılan olarak, olay dinleyicileri eklendikleri sırayla çağrılır. emitter.prependListener() yöntemi, olay dinleyicisini dinleyici dizisinin başına eklemek için alternatif olarak kullanılabilir.

import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.on('foo', () => console.log('a'));
myEE.prependListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
//   b
//   a
once<E>(string | symbol, (args: any[]) => void)

adlı olay için tek seferlik bir listenereventName işlevi ekler. eventName bir sonraki tetiklendiğinde, bu dinleyici kaldırılır ve çağrılır.

server.once('connection', (stream) => {
  console.log('Ah, we have our first user!');
});

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

Varsayılan olarak, olay dinleyicileri eklendikleri sırayla çağrılır. emitter.prependOnceListener() yöntemi, olay dinleyicisini dinleyici dizisinin başına eklemek için alternatif olarak kullanılabilir.

import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.once('foo', () => console.log('a'));
myEE.prependOnceListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
//   b
//   a
prependListener<E>(string | symbol, (args: any[]) => void)

işlevini, adlı olay için dinleyiciler dizisinin başlayan ekler. listener eklenip eklenmediğini görmek için denetim yapılmaz. aynı eventName ve listener birleşimini geçen birden çok çağrı, listener birden çok kez eklenmesine ve çağrılmasını sağlar.

server.prependListener('connection', (stream) => {
  console.log('someone connected!');
});

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

prependOnceListener<E>(string | symbol, (args: any[]) => void)

dinleyiciler dizisinin başlayan adlı olay için tek seferlik bir işlevi ekler. eventName bir sonraki tetiklendiğinde, bu dinleyici kaldırılır ve sonra çağrılır.

server.prependOnceListener('connection', (stream) => {
  console.log('Ah, we have our first user!');
});

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

rawListeners<E>(string | symbol)

tüm sarmalayıcılar (eventNametarafından oluşturulanlar gibi) dahil olmak üzere .once()adlı olay için dinleyici dizisinin bir kopyasını döndürür.

import { EventEmitter } from 'node:events';
const emitter = new EventEmitter();
emitter.once('log', () => console.log('log once'));

// Returns a new Array with a function `onceWrapper` which has a property
// `listener` which contains the original listener bound above
const listeners = emitter.rawListeners('log');
const logFnWrapper = listeners[0];

// Logs "log once" to the console and does not unbind the `once` event
logFnWrapper.listener();

// Logs "log once" to the console and removes the listener
logFnWrapper();

emitter.on('log', () => console.log('log persistently'));
// Will return a new Array with a single function bound by `.on()` above
const newListeners = emitter.rawListeners('log');

// Logs "log persistently" twice
newListeners[0]();
emitter.emit('log');
removeAllListeners<E>(string | symbol)

Tüm dinleyicileri veya belirtilen eventNameolanları kaldırır.

Özellikle EventEmitter örneği başka bir bileşen veya modül (örneğin yuvalar veya dosya akışları) tarafından oluşturulduğunda kodun başka bir yerine eklenen dinleyicileri kaldırmak kötü bir uygulamadır.

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

removeListener<E>(string | symbol, (args: any[]) => void)

listeneradlı olay için dinleyici dizisinden belirtilen eventName kaldırır.

const callback = (stream) => {
  console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);

removeListener() dinleyici dizisinden en fazla bir dinleyici örneğini kaldırır. Belirtilen eventNameiçin dinleyici dizisine birden çok kez tek bir dinleyici eklendiyse, her örneği kaldırmak için removeListener() birden çok kez çağrılmalıdır.

Bir olay yayımlandıktan sonra, yayma sırasında ona eklenen tüm dinleyiciler sırayla çağrılır. Bu, removeListener() herhangi bir removeAllListeners() yayınlandıktan sonra ve son dinleyici uygulamayı bitirmeden önce devam eden döngüden kaldırılmayacağı emit() anlamına gelir. Sonraki olaylar beklendiği gibi davranır.

import { EventEmitter } from 'node:events';
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();

const callbackA = () => {
  console.log('A');
  myEmitter.removeListener('event', callbackB);
};

const callbackB = () => {
  console.log('B');
};

myEmitter.on('event', callbackA);

myEmitter.on('event', callbackB);

// callbackA removes listener callbackB but it will still be called.
// Internal listener array at time of emit [callbackA, callbackB]
myEmitter.emit('event');
// Prints:
//   A
//   B

// callbackB is now removed.
// Internal listener array [callbackA]
myEmitter.emit('event');
// Prints:
//   A

Dinleyiciler dahili bir diziyle yönetildiği için, bunu çağırmak, dinleyici çıkarıldıktan sonra kayıtlı herhangi bir dinleyicinin konum indekslerini değiştirir. Bu, dinleyicilerin çağrılma sırasını etkilemez, ancak emitter.listeners() yöntemi tarafından döndürülen dinleyici dizisi kopyalarının yeniden oluşturulması gerektiği anlamına gelir.

Tek bir işlev tek bir olay için birden çok kez işleyici olarak eklendiğinde (aşağıdaki örnekte olduğu gibi), removeListener() en son eklenen örneği kaldırır. Örnekte once('ping') dinleyicisi kaldırılır:

import { EventEmitter } from 'node:events';
const ee = new EventEmitter();

function pong() {
  console.log('pong');
}

ee.on('ping', pong);
ee.once('ping', pong);
ee.removeListener('ping', pong);

ee.emit('ping');
ee.emit('ping');

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

setMaxListeners(number)

Varsayılan olarak, belirli bir olay için EventEmitter'den fazla dinleyici eklenirse 10bir uyarı yazdırır. Bu, bellek sızıntılarını bulmaya yardımcı olan kullanışlı bir varsayılan değerdir. emitter.setMaxListeners() yöntemi, sınırın bu belirli EventEmitter örneği için değiştirilmesini sağlar. Değer, sınırsız sayıda dinleyiciyi göstermek için Infinity (veya 0) olarak ayarlanabilir.

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

[captureRejectionSymbol](Error, string | symbol, any[])

Yöntem, Symbol.for('nodejs.rejection') bir olay yayıldığında söz reddedilmesi durumunda çağrılır ve captureRejections yayıcıda etkinleştirilir. events.captureRejectionSymbol Symbol.for('nodejs.rejection')Yerine kullanılmak mümkündür.

import { EventEmitter, captureRejectionSymbol } from 'node:events';

class MyClass extends EventEmitter {
  constructor() {
    super({ captureRejections: true });
  }

  [captureRejectionSymbol](err, event, ...args) {
    console.log('rejection happened for', event, 'with', err, ...args);
    this.destroy(err);
  }

  destroy(err) {
    // Tear the resource down here.
  }
}

Yöntem Ayrıntıları

close()

function close(): Promise<ResultWithIncomingMessage<Disconnected>>

Döndürülenler

Promise<ResultWithIncomingMessage<Disconnected>>

close(IncomingMessageCallback<Disconnected>)

IoT hub'ına bağlantıyı kapatır.

function close(done?: IncomingMessageCallback<Disconnected>)

Parametreler

done

IncomingMessageCallback<Disconnected>

İşlem tamamlandığında çağrılacak isteğe bağlı işlev. done bir Hata nesnesi bağımsız değişkeni geçirilir ve işlem başarıyla tamamlanırsa null olur.

fromConnectionString(string, TransportCtor)

Varsayılan aktarım (Amqp) veya ikinci bağımsız değişkende belirtilen bağlantı dizesinden bir IoT Hub hizmet istemcisi oluşturur.

static function fromConnectionString(connStr: string, transportCtor?: TransportCtor): Client

Parametreler

connStr

string

IoT hub'ındaki "cihaz bağlantısı" izinlerini kapsülleyen bağlantı dizesi.

transportCtor
TransportCtor

Döndürülenler

fromSharedAccessSignature(string, TransportCtor)

Varsayılan aktarım (Amqp) veya ikinci bağımsız değişkende belirtileni kullanarak verilen paylaşılan erişim imzasından bir IoT Hub hizmet istemcisi oluşturur.

static function fromSharedAccessSignature(sharedAccessSignature: string, transportCtor?: TransportCtor): Client

Parametreler

sharedAccessSignature

string

IoT hub'ındaki "hizmet bağlantısı" izinlerini kapsülleyen paylaşılan erişim imzası.

transportCtor
TransportCtor

Döndürülenler

fromTokenCredential(string, TokenCredential, TransportCtor)

Varsayılan taşımayı (Amqp) veya ikinci bağımsız değişkende belirtileni kullanarak verilen Azure tokenCredential'dan bir IoT Hub hizmet istemcisi oluşturur.

static function fromTokenCredential(hostName: string, tokenCredential: TokenCredential, transportCtor?: TransportCtor): Client

Parametreler

hostName

string

Azure hizmetinin ana bilgisayar adı.

tokenCredential
TokenCredential

Azure hizmetiyle kimlik doğrulaması yapmak için kullanılan Azure TokenCredential

transportCtor
TransportCtor

Döndürülenler

getFeedbackReceiver()

function getFeedbackReceiver(): Promise<ResultWithIncomingMessage<ServiceReceiver>>

Döndürülenler

Promise<ResultWithIncomingMessage<ServiceReceiver>>

getFeedbackReceiver(IncomingMessageCallback<ServiceReceiver>)

İstemci tarafından yeni geri bildirim iletileri alındığında olayları yayan bir AmqpReceiver nesnesi döndürür.

function getFeedbackReceiver(done?: IncomingMessageCallback<ServiceReceiver>)

Parametreler

done

IncomingMessageCallback<ServiceReceiver>

İşlem tamamlandığında çağrılacak isteğe bağlı işlev. done iki bağımsız değişkenle çağrılır: Error nesnesi (null olabilir) ve AmqpReceiver nesnesi.

getFileNotificationReceiver()

function getFileNotificationReceiver(): Promise<ResultWithIncomingMessage<ServiceReceiver>>

Döndürülenler

Promise<ResultWithIncomingMessage<ServiceReceiver>>

getFileNotificationReceiver(IncomingMessageCallback<ServiceReceiver>)

İstemci tarafından yeni dosya karşıya yükleme bildirimleri alındığında olayları yayan bir AmqpReceiver nesnesi döndürür.

function getFileNotificationReceiver(done?: IncomingMessageCallback<ServiceReceiver>)

Parametreler

done

IncomingMessageCallback<ServiceReceiver>

İşlem tamamlandığında çağrılacak isteğe bağlı işlev. done iki bağımsız değişkenle çağrılır: Error nesnesi (null olabilir) ve AmqpReceiver nesnesi.

invokeDeviceMethod(string, DeviceMethodParams)

function invokeDeviceMethod(deviceId: string, methodParams: DeviceMethodParams): Promise<ResultWithIncomingMessage<any>>

Parametreler

deviceId

string

methodParams
DeviceMethodParams

Döndürülenler

Promise<ResultWithIncomingMessage<any>>

invokeDeviceMethod(string, DeviceMethodParams, IncomingMessageCallback<any>)

Belirli bir cihaz veya modülde bir yöntemi çağırır.

function invokeDeviceMethod(deviceId: string, methodParams: DeviceMethodParams, done?: IncomingMessageCallback<any>)

Parametreler

deviceId

string

Mevcut bir cihaz kimliğinin tanımlayıcısı.

methodParams
DeviceMethodParams
done

IncomingMessageCallback<any>

Yöntem yürütmesinin sonucuyla çağrılacak isteğe bağlı geri çağırma.

invokeDeviceMethod(string, string, DeviceMethodParams)

function invokeDeviceMethod(deviceId: string, moduleId: string, methodParams: DeviceMethodParams): Promise<ResultWithIncomingMessage<any>>

Parametreler

deviceId

string

moduleId

string

methodParams
DeviceMethodParams

Döndürülenler

Promise<ResultWithIncomingMessage<any>>

invokeDeviceMethod(string, string, DeviceMethodParams, IncomingMessageCallback<any>)

function invokeDeviceMethod(deviceId: string, moduleId: string, methodParams: DeviceMethodParams, done: IncomingMessageCallback<any>)

Parametreler

deviceId

string

moduleId

string

methodParams
DeviceMethodParams
done

IncomingMessageCallback<any>

open()

function open(): Promise<ResultWithIncomingMessage<Connected>>

Döndürülenler

Promise<ResultWithIncomingMessage<Connected>>

open(IncomingMessageCallback<Connected>)

IoT hub'ına bağlantıyı açar.

function open(done?: IncomingMessageCallback<Connected>)

Parametreler

done

IncomingMessageCallback<Connected>

İşlem tamamlandığında çağrılacak isteğe bağlı işlev. done bir Hata nesnesi bağımsız değişkeni geçirilir ve işlem başarıyla tamamlanırsa null olur.

send(string, Message | BufferConvertible)

function send(deviceId: string, message: Message | BufferConvertible): Promise<ResultWithIncomingMessage<MessageEnqueued>>

Parametreler

deviceId

string

message

Message | BufferConvertible

Döndürülenler

Promise<ResultWithIncomingMessage<MessageEnqueued>>

send(string, Message | BufferConvertible, IncomingMessageCallback<MessageEnqueued>)

Bir cihaza ileti gönderir.

function send(deviceId: string, message: Message | BufferConvertible, done?: IncomingMessageCallback<MessageEnqueued>)

Parametreler

deviceId

string

Mevcut bir cihaz kimliğinin tanımlayıcısı.

message

Message | BufferConvertible

Cihaza gönderilecek iletinin gövdesi. message İletitüründe değilse dönüştürülür.

done

IncomingMessageCallback<MessageEnqueued>

İşlem tamamlandığında çağrılacak isteğe bağlı işlev. done iki bağımsız değişkenle çağrılır: Hata nesnesi (null olabilir) ve günlüğe kaydetme veya hata ayıklama için yararlı olan aktarıma özgü yanıt nesnesi.

setRetryPolicy(RetryPolicy)

İstemci tarafından ağ işlemlerini yeniden denemek için kullanılan ilkeyi ayarlayın.

function setRetryPolicy(policy: RetryPolicy)

Parametreler

policy

RetryPolicy

işlemleri yeniden denemek için kullanılan ilke (örneğin, açma, gönderme vb.). SDK 2 "yerleşik" ilkeyle birlikte gelir: ExponentialBackoffWithJitter (varsayılan) ve NoRetry (herhangi bir yeniden deneme biçimini iptal etmek için). Kullanıcı, 2 yöntem uyguladığı sürece kendi nesnesini de geçirebilir: - shouldRetry(err: Error): boolean : hata türüne göre bir işlemin yeniden denenip denenmeyeceğini gösterir - nextRetryTimeout(retryCount: number, throttled: boole): number: geçmiş deneme sayısına (retryCount) ve hatanın azaltma hatası olup olmadığı gerçeğine göre yeniden denemeden önce beklenmesi gereken süreyi (milisaniye cinsinden) döndürür.

Devralınan Yöntemin Ayrıntıları

addListener<E>(string | symbol, (args: any[]) => void)

emitter.on(eventName, listener)için diğer ad.

function addListener<E>(eventName: string | symbol, listener: (args: any[]) => void): Client

Parametreler

eventName

string | symbol

listener

(args: any[]) => void

Döndürülenler

EventEmitter.addListener Devralındı

emit<E>(string | symbol, any[])

eventNameadlı olay için kaydedilen dinleyicilerin her birini, kaydedildikleri sırayla zaman uyumlu olarak çağırır ve sağlanan bağımsız değişkenleri her birine geçirir.

Olayın dinleyicileri varsa true döndürür, aksi takdirde false.

import { EventEmitter } from 'node:events';
const myEmitter = new EventEmitter();

// First listener
myEmitter.on('event', function firstListener() {
  console.log('Helloooo! first listener');
});
// Second listener
myEmitter.on('event', function secondListener(arg1, arg2) {
  console.log(`event with parameters ${arg1}, ${arg2} in second listener`);
});
// Third listener
myEmitter.on('event', function thirdListener(...args) {
  const parameters = args.join(', ');
  console.log(`event with parameters ${parameters} in third listener`);
});

console.log(myEmitter.listeners('event'));

myEmitter.emit('event', 1, 2, 3, 4, 5);

// Prints:
// [
//   [Function: firstListener],
//   [Function: secondListener],
//   [Function: thirdListener]
// ]
// Helloooo! first listener
// event with parameters 1, 2 in second listener
// event with parameters 1, 2, 3, 4, 5 in third listener
function emit<E>(eventName: string | symbol, args: any[]): boolean

Parametreler

eventName

string | symbol

args

any[]

Döndürülenler

boolean

EventEmitter.emit Devralındı

eventNames()

Vericinin dinleyicileri kaydettiği olayları listeleyen bir dizi döndürür.

import { EventEmitter } from 'node:events';

const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});

const sym = Symbol('symbol');
myEE.on(sym, () => {});

console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
function eventNames(): (string | symbol)[]

Döndürülenler

(string | symbol)[]

EventEmitter.eventNames Devralındı

getMaxListeners()

EventEmitter veya varsayılan olarak emitter.setMaxListeners(n)olarak ayarlanan events.defaultMaxListeners için geçerli en yüksek dinleyici değerini döndürür.

function getMaxListeners(): number

Döndürülenler

number

EventEmitter.getMaxListeners'dan Devralınan

listenerCount<E>(string | symbol, (args: any[]) => void)

eventNameadlı olayı dinleyen dinleyici sayısını döndürür. listener sağlanırsa, dinleyicinin olay dinleyicileri listesinde kaç kez bulunduğunu döndürür.

function listenerCount<E>(eventName: string | symbol, listener?: (args: any[]) => void): number

Parametreler

eventName

string | symbol

Dinlenen olayın adı

listener

(args: any[]) => void

Olay işleyici işlevi

Döndürülenler

number

EventEmitter.listenerCount Devralındı

listeners<E>(string | symbol)

eventNameadlı olay için dinleyici dizisinin bir kopyasını döndürür.

server.on('connection', (stream) => {
  console.log('someone connected!');
});
console.log(util.inspect(server.listeners('connection')));
// Prints: [ [Function] ]
function listeners<E>(eventName: string | symbol): (args: any[]) => void[]

Parametreler

eventName

string | symbol

Döndürülenler

(args: any[]) => void[]

EventEmitter.listeners Devralındı

off<E>(string | symbol, (args: any[]) => void)

emitter.removeListener()için diğer ad.

function off<E>(eventName: string | symbol, listener: (args: any[]) => void): Client

Parametreler

eventName

string | symbol

listener

(args: any[]) => void

Döndürülenler

EventEmitter.off Devralındı

on<E>(string | symbol, (args: any[]) => void)

listener işlevini eventNameadlı olay için dinleyiciler dizisinin sonuna ekler. listener eklenip eklenmediğini görmek için denetim yapılmaz. aynı eventName ve listener birleşimini geçen birden çok çağrı, listener birden çok kez eklenmesine ve çağrılmasını sağlar.

server.on('connection', (stream) => {
  console.log('someone connected!');
});

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

Varsayılan olarak, olay dinleyicileri eklendikleri sırayla çağrılır. emitter.prependListener() yöntemi, olay dinleyicisini dinleyici dizisinin başına eklemek için alternatif olarak kullanılabilir.

import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.on('foo', () => console.log('a'));
myEE.prependListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
//   b
//   a
function on<E>(eventName: string | symbol, listener: (args: any[]) => void): Client

Parametreler

eventName

string | symbol

Olayın adı.

listener

(args: any[]) => void

Geri çağırma işlevi

Döndürülenler

EventEmitter.on Devralındı

once<E>(string | symbol, (args: any[]) => void)

adlı olay için tek seferlik bir listenereventName işlevi ekler. eventName bir sonraki tetiklendiğinde, bu dinleyici kaldırılır ve çağrılır.

server.once('connection', (stream) => {
  console.log('Ah, we have our first user!');
});

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

Varsayılan olarak, olay dinleyicileri eklendikleri sırayla çağrılır. emitter.prependOnceListener() yöntemi, olay dinleyicisini dinleyici dizisinin başına eklemek için alternatif olarak kullanılabilir.

import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.once('foo', () => console.log('a'));
myEE.prependOnceListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
//   b
//   a
function once<E>(eventName: string | symbol, listener: (args: any[]) => void): Client

Parametreler

eventName

string | symbol

Olayın adı.

listener

(args: any[]) => void

Geri çağırma işlevi

Döndürülenler

EventEmitter.once Devralındı

prependListener<E>(string | symbol, (args: any[]) => void)

işlevini, adlı olay için dinleyiciler dizisinin başlayan ekler. listener eklenip eklenmediğini görmek için denetim yapılmaz. aynı eventName ve listener birleşimini geçen birden çok çağrı, listener birden çok kez eklenmesine ve çağrılmasını sağlar.

server.prependListener('connection', (stream) => {
  console.log('someone connected!');
});

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

function prependListener<E>(eventName: string | symbol, listener: (args: any[]) => void): Client

Parametreler

eventName

string | symbol

Olayın adı.

listener

(args: any[]) => void

Geri çağırma işlevi

Döndürülenler

EventEmitter.prependListener Devralındı

prependOnceListener<E>(string | symbol, (args: any[]) => void)

dinleyiciler dizisinin başlayan adlı olay için tek seferlik bir işlevi ekler. eventName bir sonraki tetiklendiğinde, bu dinleyici kaldırılır ve sonra çağrılır.

server.prependOnceListener('connection', (stream) => {
  console.log('Ah, we have our first user!');
});

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

function prependOnceListener<E>(eventName: string | symbol, listener: (args: any[]) => void): Client

Parametreler

eventName

string | symbol

Olayın adı.

listener

(args: any[]) => void

Geri çağırma işlevi

Döndürülenler

EventEmitter.prependOnceListener'dan Devralınan

rawListeners<E>(string | symbol)

tüm sarmalayıcılar (eventNametarafından oluşturulanlar gibi) dahil olmak üzere .once()adlı olay için dinleyici dizisinin bir kopyasını döndürür.

import { EventEmitter } from 'node:events';
const emitter = new EventEmitter();
emitter.once('log', () => console.log('log once'));

// Returns a new Array with a function `onceWrapper` which has a property
// `listener` which contains the original listener bound above
const listeners = emitter.rawListeners('log');
const logFnWrapper = listeners[0];

// Logs "log once" to the console and does not unbind the `once` event
logFnWrapper.listener();

// Logs "log once" to the console and removes the listener
logFnWrapper();

emitter.on('log', () => console.log('log persistently'));
// Will return a new Array with a single function bound by `.on()` above
const newListeners = emitter.rawListeners('log');

// Logs "log persistently" twice
newListeners[0]();
emitter.emit('log');
function rawListeners<E>(eventName: string | symbol): (args: any[]) => void[]

Parametreler

eventName

string | symbol

Döndürülenler

(args: any[]) => void[]

EventEmitter.rawListeners Devralındı

removeAllListeners<E>(string | symbol)

Tüm dinleyicileri veya belirtilen eventNameolanları kaldırır.

Özellikle EventEmitter örneği başka bir bileşen veya modül (örneğin yuvalar veya dosya akışları) tarafından oluşturulduğunda kodun başka bir yerine eklenen dinleyicileri kaldırmak kötü bir uygulamadır.

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

function removeAllListeners<E>(eventName?: string | symbol): Client

Parametreler

eventName

string | symbol

Döndürülenler

EventEmitter.removeAllListeners Devralındı

removeListener<E>(string | symbol, (args: any[]) => void)

listeneradlı olay için dinleyici dizisinden belirtilen eventName kaldırır.

const callback = (stream) => {
  console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);

removeListener() dinleyici dizisinden en fazla bir dinleyici örneğini kaldırır. Belirtilen eventNameiçin dinleyici dizisine birden çok kez tek bir dinleyici eklendiyse, her örneği kaldırmak için removeListener() birden çok kez çağrılmalıdır.

Bir olay yayımlandıktan sonra, yayma sırasında ona eklenen tüm dinleyiciler sırayla çağrılır. Bu, removeListener() herhangi bir removeAllListeners() yayınlandıktan sonra ve son dinleyici uygulamayı bitirmeden önce devam eden döngüden kaldırılmayacağı emit() anlamına gelir. Sonraki olaylar beklendiği gibi davranır.

import { EventEmitter } from 'node:events';
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();

const callbackA = () => {
  console.log('A');
  myEmitter.removeListener('event', callbackB);
};

const callbackB = () => {
  console.log('B');
};

myEmitter.on('event', callbackA);

myEmitter.on('event', callbackB);

// callbackA removes listener callbackB but it will still be called.
// Internal listener array at time of emit [callbackA, callbackB]
myEmitter.emit('event');
// Prints:
//   A
//   B

// callbackB is now removed.
// Internal listener array [callbackA]
myEmitter.emit('event');
// Prints:
//   A

Dinleyiciler dahili bir diziyle yönetildiği için, bunu çağırmak, dinleyici çıkarıldıktan sonra kayıtlı herhangi bir dinleyicinin konum indekslerini değiştirir. Bu, dinleyicilerin çağrılma sırasını etkilemez, ancak emitter.listeners() yöntemi tarafından döndürülen dinleyici dizisi kopyalarının yeniden oluşturulması gerektiği anlamına gelir.

Tek bir işlev tek bir olay için birden çok kez işleyici olarak eklendiğinde (aşağıdaki örnekte olduğu gibi), removeListener() en son eklenen örneği kaldırır. Örnekte once('ping') dinleyicisi kaldırılır:

import { EventEmitter } from 'node:events';
const ee = new EventEmitter();

function pong() {
  console.log('pong');
}

ee.on('ping', pong);
ee.once('ping', pong);
ee.removeListener('ping', pong);

ee.emit('ping');
ee.emit('ping');

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

function removeListener<E>(eventName: string | symbol, listener: (args: any[]) => void): Client

Parametreler

eventName

string | symbol

listener

(args: any[]) => void

Döndürülenler

EventEmitter.removeListener Devralındı

setMaxListeners(number)

Varsayılan olarak, belirli bir olay için EventEmitter'den fazla dinleyici eklenirse 10bir uyarı yazdırır. Bu, bellek sızıntılarını bulmaya yardımcı olan kullanışlı bir varsayılan değerdir. emitter.setMaxListeners() yöntemi, sınırın bu belirli EventEmitter örneği için değiştirilmesini sağlar. Değer, sınırsız sayıda dinleyiciyi göstermek için Infinity (veya 0) olarak ayarlanabilir.

Çağrıların zincirlenebilmesi için EventEmitterbir başvuru döndürür.

function setMaxListeners(n: number): Client

Parametreler

n

number

Döndürülenler

EventEmitter.setMaxListeners Devralındı

[captureRejectionSymbol](Error, string | symbol, any[])

Yöntem, Symbol.for('nodejs.rejection') bir olay yayıldığında söz reddedilmesi durumunda çağrılır ve captureRejections yayıcıda etkinleştirilir. events.captureRejectionSymbol Symbol.for('nodejs.rejection')Yerine kullanılmak mümkündür.

import { EventEmitter, captureRejectionSymbol } from 'node:events';

class MyClass extends EventEmitter {
  constructor() {
    super({ captureRejections: true });
  }

  [captureRejectionSymbol](err, event, ...args) {
    console.log('rejection happened for', event, 'with', err, ...args);
    this.destroy(err);
  }

  destroy(err) {
    // Tear the resource down here.
  }
}
function [captureRejectionSymbol](error: Error, event: string | symbol, args: any[])

Parametreler

error

Error

event

string | symbol

args

any[]

Miras Olarak EventEmitter.__@captureRejectionSymbol@90