Compatibilidade entre o Azion Runtime e Node.js APIs
Node built-in
A compatibilidade entre o Azion Runtime e Node.js é um trabalho em andamento, mas um conjunto de APIs do Node Runtime já é compatível com o Azion Runtime. A seguinte lista de APIs pode ser importada dentro das edge functions com a sintaxe de importação padrão:
API | Nível de suporte | Exemplo de código | Comentários |
---|---|---|---|
async_hooks | 🟡 Parcialmente suportada | Acessar o exemplo de código | Apenas AsyncLocalStorage e AsyncResource estão implementadas. |
process.env | 🟢 Suportada | process.env.NOME_VAR | |
fs | 🟡 Parcialmente suportado | Verifique a lista abaixo |
Suporte de FS
Async:
- fs.lstat(path[, options], callback)
- fs.mkdir(path[, options], callback)
- fs.stat(path[, options], callback)
- fs.writeFile(file, data[, options], callback)
- fs.readFile(path[, options], callback)
- fs.readdir(path[, options], callback)
- fs.writeFileSync(file, data[, options])
- fs.rename(oldPath, newPath, callback)
- fs.realpath(path[, options], callback)
- fs.copyFile(src, dest[, mode], callback)
- fs.cp(src, dest[, options], callback)
- fs.read(fd, buffer, offset, length, position, callback)
- fs.read(fd, buffer[, options], callback)
- fs.read(fd[, options], callback)
- fs.rmdir(path[, options], callback)
- fs.utimes(path, atime, mtime, callback)
Node polyfills
Um polyfill é um trecho de código, frequentemente usado em JavaScript, que traz novos recursos para ambientes que não possuem essas capacidades. Os polyfills são usados durante o tempo de build e podem ser configurados através do arquivo azion.config.js.
Aqui está a lista de APIs do Node suportadas através de polyfills:
API | Nível de suporte | Exemplo de código |
---|---|---|
buffer | 🟡 Parcialmente suportada | Acessar exemplo de código |
fs | 🟡 Parcialmente suportada | Acessar exemplo de código |
crypto | 🟡 Parcialmente suportada | - |
dns | 🟡 Parcialmente suportada | - |
http2 | 🟡 Parcialmente suportada | - |
module | 🟡 Parcialmente suportada | - |
navigator | 🟡 Parcialmente suportada | - |
path_dirname | 🟡 Parcialmente suportada | - |
performance | 🟡 Parcialmente suportada | - |
process | 🟡 Parcialmente suportada | - |
accepts | 🟡 Parcialmente suportada | - |
child_process | 🟡 Parcialmente suportada | - |
cluster | 🟡 Parcialmente suportada | - |
console | 🟡 Parcialmente suportada | - |
dgram | 🟡 Parcialmente suportada | - |
events | 🟡 Parcialmente suportada | - |
http | 🟡 Parcialmente suportada | - |
https | 🟡 Parcialmente suportada | - |
inspector | 🟡 Parcialmente suportada | - |
net | 🟡 Parcialmente suportada | - |
os | 🟡 Parcialmente suportada | - |
path | 🟡 Parcialmente suportada | - |
perf_hooks | 🟡 Parcialmente suportada | - |
querystring | 🟡 Parcialmente suportada | - |
readline | 🟡 Parcialmente suportada | - |
repl | 🟡 Parcialmente suportada | - |
stream | 🟡 Parcialmente suportada | - |
_stream_passthrough | 🟡 Parcialmente suportada | - |
_stream_readable | 🟡 Parcialmente suportada | - |
_stream_transform | 🟡 Parcialmente suportada | - |
_stream_writable | 🟡 Parcialmente suportada | - |
string_decoder | 🟡 Parcialmente suportada | - |
sys | 🟡 Parcialmente suportada | - |
timers | 🟡 Parcialmente suportada | - |
tls | 🟡 Parcialmente suportada | - |
tty | 🟡 Parcialmente suportada | - |
url | 🟡 Parcialmente suportada | - |
util | 🟡 Parcialmente suportada | - |
vm | 🟡 Parcialmente suportada | - |
zlib | 🟡 Parcialmente suportada | - |
Para informações adicionais sobre compatibilidade:
Saiba mais sobre as Web APIs suportadas Saiba mais sobre os Web frameworks suportados