Ricerca…
Sintassi
- Meteor.wrapAsync (func, [context])
Parametri
parametri | Dettagli |
---|---|
func: Funzione | Una funzione asincrona / sincrona da avvolgere in una fibra che accetta un callback con parametri (error, result) . |
contesto: qualsiasi (facoltativo) | Un contesto di dati in cui viene eseguita la funzione. |
Osservazioni
Una funzione avvolta in modo asincrono può ancora essere eseguita in modo asincrono se viene fornito un callback con parametri (error, result) => {}
come parametro della funzione wrapped.
L'incorporazione di Meteor.wrapAsync
consente di Meteor.wrapAsync
codice cavalcato con i callback, dato che ora è possibile trascurare le richiamate in modo da compensare il blocco della chiamata con la Fiber
presente.
Per capire come funzionano le fibre, leggi qui: https://www.npmjs.com/package/fibers .
Esecuzione sincrona di metodi NPM asincroni con callback.
Questo esempio oauth2.client.getToken(callback)
il wrapping del metodo asincrono oauth2.client.getToken(callback)
dal pacchetto NPM simple-oauth2
in una fibra in modo che il metodo possa essere chiamato in modo sincrono.
const oauth2 = require('simple-oauth2')(credentials);
const credentials = {
clientID: '#####',
clientSecret: '#####',
site: "API Endpoint Here."
};
Meteor.startup(() => {
let token = Meteor.wrapAsync(oauth2.client.getToken)({});
if (token) {
let headers = {
'Content-Type': "application/json",
'Authorization': `Bearer ${token.access_token}`
}
// Make use of requested OAuth2 Token Here (Meteor HTTP.get).
}
});
Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow