Разработка локальных приложений Deno
Создавайте и запускайте простые приложения Deno локально, уделяя внимание файловому вводу-выводу и сетевым запросам.
«Разработка локальных приложений Deno» — бесплатный урок Edge Computing with Cloudflare Workers & Deno на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Edge Computing with Cloudflare Workers & Deno, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Edge Computing with Cloudflare Workers & Deno содержит 4 уроков всего.
Части этого урока еще не переведены и отображаются на английском.
Your First Local Deno App
Welcome! In this lesson, we'll dive into building and running Deno applications right on your local machine.
Developing locally is crucial for testing and iterating quickly before deploying to the edge.
We'll focus on two fundamental operations: reading and writing files, and making network requests.
Hello, Deno!
Let's start with a classic "Hello, World!" program. Deno executes TypeScript or JavaScript directly.
Save this code as main.ts and run it using the deno run command in your terminal.
// main.ts
console.log("Hello from local Deno!");Accessing Local Files
Deno has a secure permission model. To read files, you must explicitly grant permission using the --allow-read flag.
The Deno.readTextFile() function is an asynchronous way to read the content of a file as a string.
Deno.readTextFile(path): Reads a file.--allow-read: Grants permission to read files.
Reading a Text File
Let's create a file named hello.txt with some content, then read it using Deno.
Remember to use the --allow-read flag when running this script!
// read_file.ts
// First, create a file named hello.txt with content like "Deno is awesome!"
async function readFileContent() {
try {
const filePath = "./hello.txt";
const content = await Deno.readTextFile(filePath);
console.log("File Content:", content);
} catch (error) {
console.error("Error reading file:", error.message);
}
}
readFileContent();Saving Data to Files
Just like reading, writing files also requires explicit permission: --allow-write.
The Deno.writeTextFile() function allows you to write a string to a file. It will create the file if it doesn't exist, or overwrite it if it does.
Deno.writeTextFile(path, data): Writes data to a file.--allow-write: Grants permission to write files.
Writing to a Text File
Let's write some new content into a file. We'll create output.txt with a simple message.
Run this with deno run --allow-write write_file.ts.
// write_file.ts
async function writeFileContent() {
try {
const filePath = "./output.txt";
const content = "This is new content written by Deno!";
await Deno.writeTextFile(filePath, content);
console.log("File written successfully to", filePath);
} catch (error) {
console.error("Error writing file:", error.message);
}
}
writeFileContent();Fetching Data from the Web
Deno includes a built-in fetch API, similar to browsers, for making HTTP requests.
To allow your Deno application to access the network, you need to use the --allow-net flag.
fetch(url): Initiates a network request.--allow-net: Grants network access.
Getting Data from an API
Let's fetch some public data from a test API. We'll get a list of posts from JSONPlaceholder.
Run this with deno run --allow-net fetch_data.ts.
// fetch_data.ts
async function fetchData() {
try {
const response = await fetch("https://jsonplaceholder.typicode.com/posts/1");
if (!response.ok) {
throw new Error(`HTTP error! Status: ${response.status}`);
}
const data = await response.json();
console.log("Fetched Data:", data);
} catch (error) {
console.error("Error fetching data:", error.message);
}
}
fetchData();Deno Permissions Check
Deno prioritizes security through explicit permissions. Which flag is needed to allow a Deno script to read a local file AND make an HTTP request?
Local Deno Apps Summary
Great job! You've learned how to build and run simple Deno applications locally.
- We covered using
deno runfor executing scripts. - You practiced reading and writing files using
Deno.readTextFile()andDeno.writeTextFile()with their respective--allow-readand--allow-writepermissions. - You also fetched data from an external API using the
fetchAPI and the--allow-netflag.
These are core skills for any Deno developer, setting you up for more complex applications, including those deployed to the edge!
Часто задаваемые вопросы
Урок «Разработка локальных приложений Deno» бесплатный?
Да — полный текст урока «Разработка локальных приложений Deno» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Edge Computing with Cloudflare Workers & Deno, подпишись на CoddyKit PRO. Курс Edge Computing with Cloudflare Workers & Deno содержит 4 уроков всего.
Чему я научусь в уроке «Разработка локальных приложений Deno»?
Создавайте и запускайте простые приложения Deno локально, уделяя внимание файловому вводу-выводу и сетевым запросам. Ты практикуешь Edge Computing with Cloudflare Workers & Deno с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Edge Computing with Cloudflare Workers & Deno?
Предыдущий опыт не требуется. Edge Computing with Cloudflare Workers & Deno на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.
Сколько времени занимает урок «Разработка локальных приложений Deno»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Edge Computing with Cloudflare Workers & Deno?
Да. Каждый урок Edge Computing with Cloudflare Workers & Deno включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Основы среды выполнения Deno
- Система модулей и разрешения
- Разработка локальных приложений Deno
- Тестирование приложений Deno