Node http request
Node http request dirancang untuk melakukan permintaan HTTP ke layanan web atau API eksternal. Node ini mendukung berbagai metode HTTP, tipe data, otentikasi, dan manajemen permintaan serta respons yang fleksibel.
Pengaturan untuk node http request

1. Nama
Sebuah kolom untuk menentukan nama node.
Nama ini ditampilkan di ruang kerja dan membantu untuk dengan mudah mengidentifikasi node.
Jika dibiarkan kosong, node akan disebut http request.
Contoh:
- Nama node:
Ambil Data Cuaca
2. Metode
Metode HTTP yang akan digunakan untuk permintaan. Pilihan metode tergantung pada jenis operasi yang perlu dilakukan.
Metode yang tersedia:
GET: Mengambil data.POST: Mengirim data.PUT: Memperbarui data.DELETE: Menghapus data.PATCH: Memperbarui data secara parsial.HEAD: Mengambil header respons.OPTIONS: Mendapatkan informasi tentang API.
Contoh:
- Metode:
POST
3. Tautan
Sebuah kolom untuk menentukan URL statis yang akan dikirim permintaan.
Jika alamat perlu diatur secara dinamis, dapat diteruskan dalam msg.url.
Contoh:
- Tautan:
https://api.example.com/data
4. Data
Menentukan bagaimana data input akan ditambahkan ke permintaan HTTP. Opsi berikut tersedia:
-
Abaikan:
Data input tidak akan digunakan dalam permintaan.msg.payload, jika ada, akan diabaikan.Contoh:
Jikamsg.payloadberisi objek JSON, itu tidak akan disertakan dalam permintaan.
-
Tambahkan ke parameter kueri:
Data darimsg.payloadakan diubah menjadi parameter kueri dan ditambahkan ke URL.Contoh:
Jikamsg.payloadberisi:{
"key1": "value1",
"key2": "value2"
}Jika Tautan ditentukan sebagai
http://example.com/api, permintaan akhir akan menjadi:
GET http://example.com/api?key1=value1&key2=value2.
-
Kirim sebagai tubuh permintaan:
Data darimsg.payloadakan dikirim dalam tubuh permintaan. Opsi ini cocok untuk metode sepertiPOST,PUT, danPATCH, di mana data sering dikirim dalam tubuh.Contoh:
Jikamsg.payloadberisi:{
"name": "John Doe",
"email": "john.doe@example.com"
}Jika metode permintaan adalah
POST, data akan dikirim dalam tubuh permintaan dengan konten yang sesuai.
5. Kembali
Menentukan format di mana node akan memproses respons dari server.
Opsi:
- String UTF-8: Respons diubah menjadi string (default).
- Buffer: Respons dikembalikan sebagai objek
Buffer(berguna untuk data biner seperti gambar atau file). - JSON: Jika respons server dalam format JSON, itu secara otomatis diubah menjadi objek JavaScript.
Contoh:
- Jika
JSONdipilih, respons:diubah menjadi:{"status": "ok", "value": 42}msg.payload = { status: "ok", value: 42 };
6. Otentikasi
Node mendukung mekanisme otentikasi bawaan.
Basic Auth
- Nama Pengguna: Nama pengguna.
- Kata Sandi: Kata sandi.
Bearer Token
- Token: Token akses.
Digest
- Nama Pengguna: Nama pengguna.
- Kata Sandi: Kata sandi.
Data Input
Node http request menerima objek pesan msg dengan parameter berikut:
- msg.url: URL untuk permintaan (jika tidak ditentukan dalam pengaturan node).
- msg.method: Metode HTTP (jika tidak diatur dalam pengaturan node).
- msg.payload: Tubuh permintaan (digunakan untuk metode
POST,PUT,PATCH). - msg.headers: Header permintaan HTTP (objek).
Data Output
Node mengembalikan objek msg dengan informasi tentang permintaan yang dieksekusi:
- msg.payload: Data respons dari server.
- msg.statusCode: Kode status HTTP dari respons (misalnya,
200atau404). - msg.headers: Header respons.
- msg.responseUrl: URL yang dituju oleh permintaan.
- msg.error: Deskripsi kesalahan (jika permintaan gagal).
Contoh Penggunaan
Contoh 1: Melakukan permintaan GET
Pengaturan Node:
- Metode:
GET - URL:
https://api.weatherapi.com/v1/current.json?key=API_KEY&q=London
Alur:
[inject] ---> [http request] ---> [debug]
Hasil: Node akan mengembalikan JSON dengan cuaca saat ini.
Contoh 2: Mengirim data melalui POST
Pengaturan Node:
- Metode:
POST - URL:
https://api.example.com/devices - Data:
JSON
Alur:
[function] ---> [http request] ---> [debug]
Kode di node function:
msg.payload = {
deviceId: "sensor123",
status: "active"
};
msg.headers = { "Content-Type": "application/json" };
return msg;
Hasil: Data akan dikirim, dan node akan mengembalikan respons dari server.
Contoh 3: URL dinamis dan otentikasi
Pengaturan Node:
- URL: (biarkan kosong)
Alur:
[function] ---> [http request] ---> [debug]
Kode di node function:
msg.url = "https://api.example.com/user/123";
msg.headers = { Authorization: "Bearer YOUR_TOKEN" };
return msg;
Hasil: Node akan melakukan permintaan ke URL yang ditentukan dengan token otentikasi.