Skip to content

Commit

Permalink
HTTP CLIENT has been translated to Ukrainian.
Browse files Browse the repository at this point in the history
  • Loading branch information
denysdovhan committed Jul 3, 2015
1 parent b4afc10 commit 128c3d6
Showing 1 changed file with 29 additions and 0 deletions.
29 changes: 29 additions & 0 deletions exercises/http_client/problem.uk.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
Напишіть програму, яка надсилає HTTP GET запит на URL, який Ви отримаєте в якості першого аргументу командного рядка. Виведіть вміст **кожної** події "data" з відповіді (response) порядково в консоль (stdout).

----------------------------------------------------------------------
## ІНФОРМАЦІЯ

Для рішення цієї задачі Ви маєте використати вбудований модуль `http` модуль.

Документація до модуля `http` ви можете знайти перейшовши в браузері сюди:
{rootdir:/node_apidoc/http.html}

Метод `http.get()` це спрощений метод для простого GET-запиту, використайте його, щоб спростити ваш розв’язок. Перший аргумент в `http.get()` може бути URL на який вам потрібно надіслати запит, другим - функція зворотнього виклику (сallback).

На відміну від інших функцій зворотнього виклику, ця функція має наступну сигнатуру:

```js
function callback (response) { /* ... */ }
```

Тут об’єкт `response` є об’єктом типу **Stream (Потік)**. Ви можете інтерпретувати потоки як об’єкти, які створюють події. Три з них найбільш цікаві: "data", "error" та "end". Ви можете підписатись на події таким чином:

```js
response.on("data", function (data) { /* ... */ })
```

Подія "data" створюється тоді, коли частина данних стає доступною і може бути опрацьованою. Розмір цих частин переважно залежить від джерела данних.

О’єкт/потік `response`, який ви можете отримати з `http.get()` також має метод `setEncoding()`. Якщо ви передасте методу "utf8", то подія "data" буде посилати данні рядкового типу, замість стандартного для Node об’єкту `Buffer`, який ви маєте постійно конвертувати в рядки.

----------------------------------------------------------------------

0 comments on commit 128c3d6

Please sign in to comment.