Tugas JavaScript

Tugas JavaScript memungkinkan Anda menulis cuplikan kode JavaScript kustom untuk integrasi Anda.

Dengan menggunakan Editor JavaScript, Anda dapat membuat kode logika pemetaan data yang kompleks untuk integrasi Anda, melakukan penetapan variabel, dan menambahkan atau mengubah variabel integrasi.

Editor JavaScript mendukung fitur berikut:

  • Peta mini yang menampilkan ringkasan umum kode skrip dan membantu navigasi cepat.
  • Penandaan sintaksis/kode, indentasi, dan penomoran baris untuk keterbacaan kode dan pengenalan struktur yang lebih mudah.
  • Error saat menandai untuk menemukan dan melacak error dalam kode.
  • Melipat untuk meluaskan dan menciutkan area kode skrip.
  • Opsi klik untuk menyalin untuk menyalin kode skrip ke papan klip.

Mengonfigurasi tugas JavaScript

Untuk menambahkan tugas JavaScript ke integrasi Anda, lakukan langkah-langkah berikut:

  1. Di UI Apigee, pilih Organisasi Apigee Anda.
  2. Klik Develop > Integrations.
  3. Pilih integrasi yang ada atau buat integrasi baru dengan mengklik Buat Integrasi.

    Jika Anda membuat integrasi baru:

    1. Masukkan nama dan deskripsi dalam dialog Create Integration.
    2. Pilih Region untuk integrasi dari daftar wilayah yang didukung.
    3. Klik Create.

    Tindakan ini akan membuka integrasi di desainer integrasi.

  4. Di menu navigasi desainer integrasi, klik +Tambahkan tugas/pemicu > Tasks untuk melihat daftar tugas yang tersedia.
  5. Klik dan tempatkan elemen JavaScript dalam editor integrasi.
  6. Klik elemen JavaScript pada desainer untuk melihat panel konfigurasi tugas JavaScript.
  7. Klik Open script editor untuk melihat dan mengedit JavaScript Editor.
  8. Tulis kode JavaScript Anda di dalam fungsi executesScript(event) yang dibuat secara otomatis di Editor JavaScript. Tutup editor setelah selesai, perubahan apa pun akan disimpan secara otomatis.

    Untuk informasi tentang cara mengakses variabel integrasi dan fungsi yang didukung, lihat Menggunakan Editor JavaScript.

    Untuk mengetahui informasi tentang cara melihat log eksekusi yang dihasilkan, lihat Log eksekusi.

Gambar berikut menunjukkan contoh tata letak Editor JavaScript: gambar yang menampilkan editor JavaScript gambar yang menampilkan editor JavaScript

Menggunakan Editor JavaScript

Untuk melihat dan mengedit JavaScript Editor, buka panel konfigurasi tugas JavaScript lalu klik Open script editor. Editor JavaScript secara default berisi fungsi bernama executesScript(event).

Dengan keterangan:

  • executesScript() adalah fungsi yang dipanggil saat Integrasi Apigee menjalankan tugas JavaScript selama integrasi berjalan.
  • event adalah objek dalam memori dari Integrasi Apigee.

    Untuk mengetahui informasi tentang metode yang didukung objek event, lihat Mengakses variabel integrasi.

Mesin eksekusi JavaScript yang digunakan Apigee Integration didasarkan pada Rhino 1.7.14 yang tidak mendukung semua sintaksis ES6. Hanya pelengkapan otomatis sintaksis ES5 yang didukung. Untuk melihat semua sintaksis ES6 yang didukung, lihat Dukungan Rhino ES2015.

Mengakses variabel integrasi

Variabel yang ditentukan dalam integrasi Anda dapat diakses dari Editor JavaScript menggunakan objek Integrasi Apigee in-memory event.

Metode berikut didukung untuk mengakses variabel integrasi dari Editor JavaScript Anda:

Function name Deskripsi Penggunaan

getEventExecutionInfoId

Menampilkan ID eksekusi run integrasi.

Jenis nilai yang ditampilkan: String

Sintaksis: event.getEventExecutionInfoId()

Contoh:

function executeScript(event) {
  event.getEventExecutionInfoId();
  }
      

getGoogleCloudProjectId

Menampilkan ID project Google Cloud.

Jenis nilai yang ditampilkan: String

Sintaksis: event.getGoogleCloudProjectId()

Contoh:

function executeScript(event) {
  event.getGcpProjectId();
  }

getIntegrationName

Menampilkan nama integrasi saat ini.

Jenis nilai yang ditampilkan: String

Sintaksis: event.getIntegrationName

Contoh:

function executeScript(event) {
  event.getIntegrationName();
  }

getParameter

Menampilkan nilai variabel integrasi yang disediakan.

Jenis nilai yang ditampilkan: Jenis data variabel integrasi

Sintaksis: event.getParameter("variable_name")

Parameter input: Nama variabel integrasi. Jika variable_name adalah variabel yang dihasilkan secara otomatis, sertakan variabel tersebut dalam tanda aksen rendah (``). Misalnya, `responseBody`.

Contoh:

function executeScript(event) { 
  event.getParameter("var1");
  }

getRegion

Menampilkan nama region integrasi.

Jenis nilai yang ditampilkan: String

Sintaksis: event.getRegion()

Contoh:

function executeScript(event) {
  event.getRegion();
  }

log

Menulis nilai yang ditentukan ke log eksekusi.

Untuk mengetahui informasi tentang cara melihat log eksekusi yang dihasilkan, lihat Log eksekusi.

Sintaksis: event.log(value)

Parameter input: Variabel atau fungsi apa pun yang digunakan dalam skrip.

Contoh 1:

function executeScript(event) {
  event.log(event.getParameter("var1"));
  }

Contoh 2:

function executeScript(event) {
  event.log("Lorem ipsum");
  }

setParameter

Menetapkan atau memperbarui nilai variabel integrasi.

Sintaksis: event.setParameter("variable_name", "variable_value")

Parameter input: Fungsi ini menggunakan argumen berikut:

  • Argumen pertama: Nama variabel. Jika variable_name adalah variabel yang dihasilkan secara otomatis, sertakan variabel tersebut dalam tanda aksen rendah (``). Misalnya, `responseBody`.
  • Argumen kedua: Nilai.

Contoh:

function executeScript(event) {
  event.setParameter("`responseBody`", "NewStringValue");
  }

Tetapkan parameter tugas

Jika integrasi Anda memiliki beberapa parameter berukuran besar yang tidak digunakan oleh tugas JavaScript, Anda dapat menetapkan kolom TaskParameter untuk tugas JavaScript guna meningkatkan performa.

Untuk menetapkan kolom TaskParameter bagi tugas JavaScript, pilih salah satu opsi berikut:

Konsol

  1. Buka halaman Application Integration.

    Buka Application Integration

  2. Pilih integrasi. Editor integrasi akan terbuka.
  3. Klik Action > Download Integration > Integration Version. Versi integrasi akan didownload sebagai file JSON.
  4. Buka file versi integrasi di editor, lalu lakukan tindakan berikut:
    1. Temukan kolom taskConfigs dengan tugas sebagai JavaScriptTask. Di kolom parameters, cari parameter bernama script.
      "taskConfigs": [{
        "task": "JavaScriptTask",
        "taskId": 1,
        "parameters": {
          "script": {
            "key": "script",
            "value": {
              "stringValue": "function that is called during the JavaScriptTask execution"
            }
        }"
      }]
      
    2. Di kolom parameters ini, tambahkan parameter yang digunakan di kolom JavaScriptTask menggunakan template berikut:
      "ParamName": {
        "key": "ParamName",
        "value": {
          "stringValue": "$ParamName$"
        }
      }
      
  5. Simpan perubahan yang Anda buat ke file versi integrasi.
  6. Upload file versi integrasi ke integrasi.

API

  1. Untuk mendownload versi integrasi, lakukan panggilan ke metode projects.locations.integrations.versions.download dengan filFormat yang ditetapkan ke JSON.
  2. Buka file versi integrasi di editor, lalu lakukan tindakan berikut:
    1. Temukan kolom taskConfigs dengan tugas sebagai JavaScriptTask. Di kolom parameters, cari parameter bernama script.
      "taskConfigs": [{
        "task": "JavaScriptTask",
        "taskId": 1,
        "parameters": {
          "script": {
            "key": "script",
            "value": {
              "stringValue": "function that is called during the JavaScriptTask execution"
            }
        }"
      }]
      
    2. Di kolom parameters ini, tambahkan parameter yang digunakan di kolom JavaScriptTask menggunakan template berikut:
      "ParamName": {
        "key": "ParamName",
        "value": {
          "stringValue": "$ParamName$"
        }
      }
      
  3. Untuk mengupload versi integrasi, lakukan panggilan ke metode projects.locations.integrations.versions.upload dengan file versi integrasi yang telah diupdate.

Strategi penanganan error

Strategi penanganan error untuk tugas menentukan tindakan yang akan diambil jika tugas gagal karena error sementara. Untuk informasi tentang cara menggunakan strategi penanganan error, dan mengetahui berbagai jenis strategi penanganan error, lihat Strategi penanganan error.