\n\n
\nContent\n<\/main>\n<\/body>\n<\/pre>\n\n\n

header.html
\n<\/p>\n

Welcome to the web site<\/header>\n<\/pre>\n\n\n

output
\n<\/p>\n


国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

\n
Welcome to the web site<\/header>\n
\nContent\n<\/main>\n<\/body>\n<\/pre>\n\n\n

Apabila Compute memasuki pemandangan, landskap tepi berubah dalam dua cara utama: kebolehprograman dan modulariti.<\/p>\n\n

Tidak lama selepas sokongan platform kami untuk Rust telah stabil, kami menerbitkan peti untuk Rust yang melaksanakan ESI, dan menambah kebolehprograman. Anda kini boleh mengkonfigurasi, menggunakan kod, cara membina permintaan bahagian belakang tambahan dan cara mengendalikan serpihan respons. Anda juga boleh melakukan pemprosesan ESI pada dokumen yang tidak berasal dari pelayan bahagian belakang. Kebolehprograman ini membezakannya daripada sokongan ESI yang kami ada dalam VCL, yang terhad kepada set tetap ciri yang kami tawarkan.<\/p>\n\n

Pada masa yang sama, pendekatan ini sangat modular, memberikan pengaturcara pilihan untuk melaksanakan pemprosesan ESI ini atas dasar setiap permintaan, dan pilihan untuk menggabungkan pemprosesan dengan modul lain yang berfungsi dengan jenis data yang serasi dan digunakan mereka dalam sebarang susunan dan\/atau keadaan logik yang dinyatakan.<\/p>\n

\n \n \n Sasaran seterusnya: JavaScript\n<\/h2>\n\n

Sama seperti keluaran Rust kami, kami mahu pustaka JavaScript ini boleh diprogramkan. Sokongan JavaScript Fastly sentiasa menerima API Ambil dan API Streams pendampingnya. Satu ciri berguna bagi Streams API ialah antara muka TransformStream, membenarkan data untuk \"disampaikan\" melalui objek untuk menggunakan transformasi—sempurna untuk ESI. Dengan melaksanakan pemproses ESI sebagai pelaksanaan TransformStream, kami dapat menyesuaikannya terus ke dalam Aplikasi Pengiraan Cepat yang ditulis dalam JavaScript.<\/p>\n\n

Berikut ialah cara anda boleh menstrim melaluinya:
\n<\/p>\n

\n\n
\nContent\n<\/main>\n<\/body>\n<\/pre>\n\n\n

Transformasi, yang kami panggil EsiTransformStream, digunakan pada strim secara langsung, mengurangkan kebimbangan memori dan prestasi. Ini bermakna:<\/p>\n\n

    \n
  • Tidak perlu menampan keseluruhan respons huluan sebelum menggunakan transformasi.<\/li>\n
  • Transformer menggunakan tindak balas huluan secepat mungkin dan memproses teg ESI apabila ia muncul dalam strim. Apabila pengubah selesai memproses setiap teg ESI, hasilnya dikeluarkan serta-merta ke hiliran, jadi kami dapat menahan penimbal yang mungkin minimum. Ini membolehkan pelanggan menerima bait pertama hasil yang distrim apabila ia sedia, tanpa perlu menunggu untuk diproses sepenuhnya.<\/li>\n<\/ul>\n\n

    Selain itu, reka bentuk ini adalah modular, menjadikan EsiTransformStream sebagai alat lain yang boleh anda gunakan bersama dengan perkara lain. Sebagai contoh, anda mungkin mempunyai transformasi lain yang anda ingin gunakan pada respons, seperti pemampatan, dan respons boleh disalurkan melalui mana-mana bilangan strim transformasi ini, kerana ia adalah antara muka standard sepenuhnya. Jika anda mahu, anda juga boleh mendayakan ESI secara bersyarat untuk permintaan atau respons tertentu sahaja, seperti pengepala permintaan, laluan atau jenis kandungan respons.<\/p>\n\n

    Begini cara anda membuat seketika EsiTransformStream:
    \n<\/p>\n

    Welcome to the web site<\/header>\n<\/pre>\n\n\n

    Pembina mengambil URL dan objek Pengepala, dan secara pilihan mengambil beberapa pilihan sebagai parameter ketiga. Seperti yang diterangkan sebelum ini, fungsi utama ESI ialah memuat turun templat tambahan, untuk dimasukkan ke dalam strim yang dihasilkan. Menghadapi tag menggunakan fetch sebagai mekanisme asas untuk mendapatkan semula templat, dan tujuan utama parameter ini adalah untuk mengkonfigurasi panggilan pengambilan tersebut:<\/p>\n\n

      \n
    • URL digunakan untuk menyelesaikan laluan relatif dalam src tanda nama.<\/li>\n
    • Pengepala digunakan semasa membuat permintaan tambahan untuk mengambil templat.<\/li>\n
    • Objek konfigurasi pilihan boleh digunakan untuk mengatasi gelagat pengambilan yang dibuat dan untuk menggunakan gelagat tersuai lain, seperti cara memproses templat yang diambil dan pengendalian ralat tersuai.<\/li>\n<\/ul>\n\n

      Dalam kes paling mudah, anda hanya akan menggunakan nilai pengambilan objek konfigurasi. Jika anda tidak menyediakannya, maka ia menggunakan fungsi pengambilan global sebaliknya, tetapi dalam Kira anda memerlukannya untuk menentukan hujung belakang untuk pengambilan untuk digunakan apabila menyertakan templat (melainkan anda menggunakan ciri hujung belakang dinamik). Contoh coretan di atas memberikan bahagian belakang bernama origin_0 sebelum memanggil pengambilan global.<\/p>\n\n

      Itu sahaja! Dengan persediaan mudah ini, anda boleh mempunyai bahagian belakang yang menyajikan teg ESI dan aplikasi Compute yang memprosesnya. Berikut ialah contoh penuh yang boleh anda jalankan:<\/p>\n\n\n

      \n \n biola.fastly.dev\n \n<\/div>\n

      \n \n \n Sokongan untuk ciri ESI\n<\/h2>\n\n

      Pelaksanaan ini menawarkan lebih banyak ciri ESI daripada yang lain yang kami sediakan pada masa lalu.<\/p>\n\n

      \n \n \n Ralat pengendalian\n<\/h3>\n\n

      Kadangkala, fail yang dirujuk oleh tag mungkin gagal diambil kerana ia tidak wujud atau menyebabkan ralat pelayan. Anda boleh mengabaikan ralat dalam kes ini dengan menambahkan atribut onerror=\"continue\".
      \n<\/p>\n\n

      \n\n
      \nContent\n<\/main>\n<\/body>\n<\/pre>\n\n\n

      Jika \/templates\/header.html menyebabkan ralat, pemproses ESI secara senyap mengabaikan ralat dan menggantikan keseluruhan tag dengan rentetan kosong.<\/p>\n\n

      Anda juga boleh menggunakan pengendalian ralat yang lebih berstruktur dengan menggunakan blok, yang kelihatan seperti ini:
      \n<\/p>\n

      Welcome to the web site<\/header>\n<\/pre>\n\n\n

      Pemproses ESI mula-mula melaksanakan kandungan . Jika teg esi:include menyebabkan ralat, maka pemproses ESI melaksanakan kandungan .<\/p>\n\n

      Adalah penting untuk ambil perhatian bahawa keseluruhan blok digantikan dengan keseluruhan sekat jika ia berjaya atau jika ada kesilapan. Dalam contoh di atas, jika \/templates\/header.html menyebabkan ralat, maka ini juga menyebabkan teks \"Pengepala utama\"<\/em> tidak muncul dalam output; hanya teks \"Pengepala alternatif\"<\/em> disertakan. Lihat spesifikasi bahasa ESI untuk butiran lanjut.<\/p>\n

      \n \n \n bersyarat\n<\/h3>\n\n

      ESI juga membenarkan pelaksanaan bersyarat, dengan melakukan semakan masa jalan pada pembolehubah. Berikut ialah contoh cek sedemikian:
      \n<\/p>\n

      \n
      Welcome to the web site<\/header>\n
      \nContent\n<\/main>\n<\/body>\n<\/pre>\n\n\n

      Apabila pemproses menemui blok, ia berjalan melalui blok, menyemak ungkapan yang ditetapkan dalam atribut ujian mereka. Pemproses melaksanakan blok esi:when pertama di mana ungkapan menilai kepada benar. Jika tiada ungkapan bernilai benar, maka ia secara pilihan akan melaksanakan esi: otherwise block jika ia disediakan. Keseluruhan blok digantikan dengan keseluruhan mana-mana atau blok yang melaksanakan.<\/p>\n\n

      Pemproses menyediakan set pembolehubah terhad, yang berdasarkan terutamanya pada kuki permintaan. Dalam contoh di atas, kuki HTTP dengan nama \"kumpulan\" disemak untuk nilainya. Pelaksanaan kami adalah berdasarkan spesifikasi bahasa ESI; rujuk padanya untuk butiran lanjut.<\/p>\n

      \n \n \n Senarai tag dan ciri yang disokong\n<\/h3>\n\n

      Pelaksanaan ini menyokong teg berikut bagi spesifikasi bahasa ESI.<\/p>\n\n

        \n
      • esi:termasuk<\/li>\n
      • esi:ulasan<\/li>\n
      • esi:alih keluar<\/li>\n
      • \nesi:cuba \/ esi:percubaan \/ esi:kecuali\n<\/li>\n
      • \nesi:pilih \/ esi:bila \/ esi:sebaliknya\n<\/li>\n
      • esi:vars<\/li>\n<\/ul>\n\n

        teg ditakrifkan dalam spesifikasi sebagai pilihan dan tidak disertakan dalam pelaksanaan ini.<\/p>\n

        Pembolehubah ESI disokong dalam atribut teg ESI dan Ungkapan ESI disokong dalam atribut ujian . Selain itu, ulasan disokong.<\/p>\n

        \n \n \n Tingkah laku tersuai bermakna kemungkinan yang tidak berkesudahan\n<\/h2>\n\n

        Walaupun set ciri cukup untuk teruja, bahagian yang benar-benar menarik untuk boleh diprogramkan ialah lebih banyak perkara boleh dilakukan. Membawa masuk templat ialah penggunaan utama ESI, tetapi itu bukan semua yang boleh dilakukannya. Ini contohnya.<\/p>\n\n

        Pertimbangkan anda mempunyai cap masa yang ditandakan dalam dokumen anda yang anda mahu diwakili sebagai tarikh relatif apabila ia dipaparkan, seperti \"2 hari yang lalu\". Terdapat banyak cara untuk melakukan ini, tetapi untuk mempunyai prestasi terbaik dan implikasi ingatan, adalah bagus untuk melakukan pencarian\/gantian dalam strim. Pengaturcaraan perpustakaan ESI ini sebenarnya boleh digunakan sebagai pilihan yang baik untuk melakukan ini.<\/p>\n\n

        Kami boleh menentukan cap masa untuk dikodkan dalam dokumen hujung belakang anda menggunakan teg ESI yang dibuat khas dalam format seperti berikut:
        \n<\/p>\n

        \n\n
        \nContent\n<\/main>\n<\/body>\n<\/pre>\n\n\n

        Sebagai contoh, coretan ini boleh mewakili tengah malam pada 1 Januari 2024, waktu Pasifik:
        \n<\/p>\n

        Welcome to the web site<\/header>\n<\/pre>\n\n\n

        Sekarang, sediakan EsiTransformStream untuk menyediakan dokumen gantian sintetik apabila ia melihat corak URL itu:
        \n<\/p>\n

        \n
        Welcome to the web site<\/header>\n
        \nContent\n<\/main>\n<\/body>\n<\/pre>\n\n\n

        Sekarang, apabila pemproses menemui contoh coretan di atas, ia akan mengeluarkan hasil yang serupa dengan yang berikut (bergantung pada berapa hari ke hadapan anda menjalankannya):
        \n<\/p>\n

        const transformedBody = resp.body.pipeThrough(esiTransformStream);\n\nreturn new Response(\n  transformedBody,\n  {\n    status: resp.status,\n    headers: resp.headers,\n  },\n);\n<\/pre>\n\n\n

        Oleh kerana dokumen bahagian belakang boleh dicache oleh Fastly, permintaan masa hadapan boleh mendapat manfaat daripada HIT cache, manakala pemprosesan akan terus memaparkan masa relatif yang dikemas kini.<\/p>\n\n

        Untuk contoh langsung ini, lihat biola berikut:
        \n<\/p>\n

        \n \n biola.fastly.dev\n \n<\/div>\n\n\n\n

        \n \n \n Ambil pusing!\n<\/h2>\n\n

        @fastly\/esi kini tersedia di npm, sedia untuk ditambahkan pada mana-mana program JavaScript. Gunakannya di tepi dalam program Fastly Compute anda, sudah tentu, tetapi sebenarnya, ia juga berfungsi di luar Compute, selagi persekitaran anda menyokong API pengambilan. Kod sumber penuh tersedia di GitHub.<\/p>\n\n

        Mulakan dengan mengklon salah satu Fiddles di atas dan mengujinya dengan asal-usul anda sendiri, walaupun sebelum anda membuat akaun Fastly. Apabila anda bersedia untuk menerbitkan perkhidmatan anda pada rangkaian global kami, anda boleh mendaftar untuk percubaan percuma Compute dan kemudian mulakan segera dengan perpustakaan ESI pada npm.<\/p>\n\n

        Dengan Compute, kelebihan boleh diprogramkan dan modular – pilih dan gabungkan penyelesaian yang paling sesuai untuk anda, atau bina sendiri. Kami bukan satu-satunya yang boleh menyediakan modul seperti ini untuk Compute. Sesiapa sahaja boleh menyumbang kepada ekosistem dan mengambil daripadanya. Dan, seperti biasa, temui kami di forum komuniti Fastly dan beritahu kami perkara yang telah anda bina!<\/p>\n\n\n \n\n \n "}

        Rumah hujung hadapan web tutorial js Bahagian Tepi modular Termasuk komponen untuk Pengiraan JavaScript

        Bahagian Tepi modular Termasuk komponen untuk Pengiraan JavaScript

        Dec 20, 2024 am 03:13 AM

        A modular Edge Side Includes component for JavaScript Compute

        Pada musim panas 2022, rakan sepasukan saya Kailan bekerja pada peti Rust untuk Fastly Compute, melaksanakan subset bahasa templat Edge Side Includes (ESI) dan menerbitkan catatan blog tentang ia. Artikel ini penting bukan sahaja kerana kami mengeluarkan pustaka yang berguna, tetapi kerana ia merupakan ilustrasi cemerlang tentang perkara yang boleh dibawa oleh Compute kepada kami: kelebihan boleh atur cara dengan fungsi modular. Dan kini JavaScript telah tersedia secara umum di Compute selama lebih daripada setahun, sudah tiba masanya kami mempunyai penyelesaian yang sama untuk pengguna JavaScript kami. Pustaka ESI Fastly untuk JavaScript, kini tersedia pada npm, membolehkan anda menambah pemprosesan ESI yang berkuasa pada aplikasi anda.


        Kebolehprograman dan Modulariti

        Selama hampir sedekad, CDN Fastly telah mendapat sokongan untuk Edge Side Includes (ESI), bahasa templat yang berfungsi dengan mentafsir teg khas dalam sumber HTML anda. Ia berkisar pada teg , yang mengarahkan pelayan tepi untuk mengambil dokumen lain dan menyelaraskannya ke dalam strim.

        index.html

        <body>
        <esi:include src="./header.html" />
        <main>
        Content
        </main>
        </body>
        

        header.html

        <header>Welcome to the web site</header>
        

        output

        
        <header>Welcome to the web site</header>
        
        Content

        Apabila Compute memasuki pemandangan, landskap tepi berubah dalam dua cara utama: kebolehprograman dan modulariti.

        Tidak lama selepas sokongan platform kami untuk Rust telah stabil, kami menerbitkan peti untuk Rust yang melaksanakan ESI, dan menambah kebolehprograman. Anda kini boleh mengkonfigurasi, menggunakan kod, cara membina permintaan bahagian belakang tambahan dan cara mengendalikan serpihan respons. Anda juga boleh melakukan pemprosesan ESI pada dokumen yang tidak berasal dari pelayan bahagian belakang. Kebolehprograman ini membezakannya daripada sokongan ESI yang kami ada dalam VCL, yang terhad kepada set tetap ciri yang kami tawarkan.

        Pada masa yang sama, pendekatan ini sangat modular, memberikan pengaturcara pilihan untuk melaksanakan pemprosesan ESI ini atas dasar setiap permintaan, dan pilihan untuk menggabungkan pemprosesan dengan modul lain yang berfungsi dengan jenis data yang serasi dan digunakan mereka dalam sebarang susunan dan/atau keadaan logik yang dinyatakan.

        Sasaran seterusnya: JavaScript

        Sama seperti keluaran Rust kami, kami mahu pustaka JavaScript ini boleh diprogramkan. Sokongan JavaScript Fastly sentiasa menerima API Ambil dan API Streams pendampingnya. Satu ciri berguna bagi Streams API ialah antara muka TransformStream, membenarkan data untuk "disampaikan" melalui objek untuk menggunakan transformasi—sempurna untuk ESI. Dengan melaksanakan pemproses ESI sebagai pelaksanaan TransformStream, kami dapat menyesuaikannya terus ke dalam Aplikasi Pengiraan Cepat yang ditulis dalam JavaScript.

        Berikut ialah cara anda boleh menstrim melaluinya:

        <body>
        <esi:include src="./header.html" />
        <main>
        Content
        </main>
        </body>
        

        Transformasi, yang kami panggil EsiTransformStream, digunakan pada strim secara langsung, mengurangkan kebimbangan memori dan prestasi. Ini bermakna:

        • Tidak perlu menampan keseluruhan respons huluan sebelum menggunakan transformasi.
        • Transformer menggunakan tindak balas huluan secepat mungkin dan memproses teg ESI apabila ia muncul dalam strim. Apabila pengubah selesai memproses setiap teg ESI, hasilnya dikeluarkan serta-merta ke hiliran, jadi kami dapat menahan penimbal yang mungkin minimum. Ini membolehkan pelanggan menerima bait pertama hasil yang distrim apabila ia sedia, tanpa perlu menunggu untuk diproses sepenuhnya.

        Selain itu, reka bentuk ini adalah modular, menjadikan EsiTransformStream sebagai alat lain yang boleh anda gunakan bersama dengan perkara lain. Sebagai contoh, anda mungkin mempunyai transformasi lain yang anda ingin gunakan pada respons, seperti pemampatan, dan respons boleh disalurkan melalui mana-mana bilangan strim transformasi ini, kerana ia adalah antara muka standard sepenuhnya. Jika anda mahu, anda juga boleh mendayakan ESI secara bersyarat untuk permintaan atau respons tertentu sahaja, seperti pengepala permintaan, laluan atau jenis kandungan respons.

        Begini cara anda membuat seketika EsiTransformStream:

        <header>Welcome to the web site</header>
        

        Pembina mengambil URL dan objek Pengepala, dan secara pilihan mengambil beberapa pilihan sebagai parameter ketiga. Seperti yang diterangkan sebelum ini, fungsi utama ESI ialah memuat turun templat tambahan, untuk dimasukkan ke dalam strim yang dihasilkan. Menghadapi tag menggunakan fetch sebagai mekanisme asas untuk mendapatkan semula templat, dan tujuan utama parameter ini adalah untuk mengkonfigurasi panggilan pengambilan tersebut:

        • URL digunakan untuk menyelesaikan laluan relatif dalam src tanda nama.
        • Pengepala digunakan semasa membuat permintaan tambahan untuk mengambil templat.
        • Objek konfigurasi pilihan boleh digunakan untuk mengatasi gelagat pengambilan yang dibuat dan untuk menggunakan gelagat tersuai lain, seperti cara memproses templat yang diambil dan pengendalian ralat tersuai.

        Dalam kes paling mudah, anda hanya akan menggunakan nilai pengambilan objek konfigurasi. Jika anda tidak menyediakannya, maka ia menggunakan fungsi pengambilan global sebaliknya, tetapi dalam Kira anda memerlukannya untuk menentukan hujung belakang untuk pengambilan untuk digunakan apabila menyertakan templat (melainkan anda menggunakan ciri hujung belakang dinamik). Contoh coretan di atas memberikan bahagian belakang bernama origin_0 sebelum memanggil pengambilan global.

        Itu sahaja! Dengan persediaan mudah ini, anda boleh mempunyai bahagian belakang yang menyajikan teg ESI dan aplikasi Compute yang memprosesnya. Berikut ialah contoh penuh yang boleh anda jalankan:

        biola.fastly.dev

        Sokongan untuk ciri ESI

        Pelaksanaan ini menawarkan lebih banyak ciri ESI daripada yang lain yang kami sediakan pada masa lalu.

        Ralat pengendalian

        Kadangkala, fail yang dirujuk oleh tag mungkin gagal diambil kerana ia tidak wujud atau menyebabkan ralat pelayan. Anda boleh mengabaikan ralat dalam kes ini dengan menambahkan atribut onerror="continue".

        <body>
        <esi:include src="./header.html" />
        <main>
        Content
        </main>
        </body>
        

        Jika /templates/header.html menyebabkan ralat, pemproses ESI secara senyap mengabaikan ralat dan menggantikan keseluruhan tag dengan rentetan kosong.

        Anda juga boleh menggunakan pengendalian ralat yang lebih berstruktur dengan menggunakan blok, yang kelihatan seperti ini:

        <header>Welcome to the web site</header>
        

        Pemproses ESI mula-mula melaksanakan kandungan . Jika teg esi:include menyebabkan ralat, maka pemproses ESI melaksanakan kandungan .

        Adalah penting untuk ambil perhatian bahawa keseluruhan blok digantikan dengan keseluruhan sekat jika ia berjaya atau jika ada kesilapan. Dalam contoh di atas, jika /templates/header.html menyebabkan ralat, maka ini juga menyebabkan teks "Pengepala utama" tidak muncul dalam output; hanya teks "Pengepala alternatif" disertakan. Lihat spesifikasi bahasa ESI untuk butiran lanjut.

        bersyarat

        ESI juga membenarkan pelaksanaan bersyarat, dengan melakukan semakan masa jalan pada pembolehubah. Berikut ialah contoh cek sedemikian:

        
        <header>Welcome to the web site</header>
        
        Content

        Apabila pemproses menemui blok, ia berjalan melalui blok, menyemak ungkapan yang ditetapkan dalam atribut ujian mereka. Pemproses melaksanakan blok esi:when pertama di mana ungkapan menilai kepada benar. Jika tiada ungkapan bernilai benar, maka ia secara pilihan akan melaksanakan esi: otherwise block jika ia disediakan. Keseluruhan blok digantikan dengan keseluruhan mana-mana atau blok yang melaksanakan.

        Pemproses menyediakan set pembolehubah terhad, yang berdasarkan terutamanya pada kuki permintaan. Dalam contoh di atas, kuki HTTP dengan nama "kumpulan" disemak untuk nilainya. Pelaksanaan kami adalah berdasarkan spesifikasi bahasa ESI; rujuk padanya untuk butiran lanjut.

        Senarai tag dan ciri yang disokong

        Pelaksanaan ini menyokong teg berikut bagi spesifikasi bahasa ESI.

        • esi:termasuk
        • esi:ulasan
        • esi:alih keluar
        • esi:cuba / esi:percubaan / esi:kecuali
        • esi:pilih / esi:bila / esi:sebaliknya
        • esi:vars

        teg ditakrifkan dalam spesifikasi sebagai pilihan dan tidak disertakan dalam pelaksanaan ini.

        Pembolehubah ESI disokong dalam atribut teg ESI dan Ungkapan ESI disokong dalam atribut ujian . Selain itu, ulasan disokong.

        Tingkah laku tersuai bermakna kemungkinan yang tidak berkesudahan

        Walaupun set ciri cukup untuk teruja, bahagian yang benar-benar menarik untuk boleh diprogramkan ialah lebih banyak perkara boleh dilakukan. Membawa masuk templat ialah penggunaan utama ESI, tetapi itu bukan semua yang boleh dilakukannya. Ini contohnya.

        Pertimbangkan anda mempunyai cap masa yang ditandakan dalam dokumen anda yang anda mahu diwakili sebagai tarikh relatif apabila ia dipaparkan, seperti "2 hari yang lalu". Terdapat banyak cara untuk melakukan ini, tetapi untuk mempunyai prestasi terbaik dan implikasi ingatan, adalah bagus untuk melakukan pencarian/gantian dalam strim. Pengaturcaraan perpustakaan ESI ini sebenarnya boleh digunakan sebagai pilihan yang baik untuk melakukan ini.

        Kami boleh menentukan cap masa untuk dikodkan dalam dokumen hujung belakang anda menggunakan teg ESI yang dibuat khas dalam format seperti berikut:

        <body>
        <esi:include src="./header.html" />
        <main>
        Content
        </main>
        </body>
        

        Sebagai contoh, coretan ini boleh mewakili tengah malam pada 1 Januari 2024, waktu Pasifik:

        <header>Welcome to the web site</header>
        

        Sekarang, sediakan EsiTransformStream untuk menyediakan dokumen gantian sintetik apabila ia melihat corak URL itu:

        
        <header>Welcome to the web site</header>
        
        Content

        Sekarang, apabila pemproses menemui contoh coretan di atas, ia akan mengeluarkan hasil yang serupa dengan yang berikut (bergantung pada berapa hari ke hadapan anda menjalankannya):

        const transformedBody = resp.body.pipeThrough(esiTransformStream);
        
        return new Response(
          transformedBody,
          {
            status: resp.status,
            headers: resp.headers,
          },
        );
        

        Oleh kerana dokumen bahagian belakang boleh dicache oleh Fastly, permintaan masa hadapan boleh mendapat manfaat daripada HIT cache, manakala pemprosesan akan terus memaparkan masa relatif yang dikemas kini.

        Untuk contoh langsung ini, lihat biola berikut:

        biola.fastly.dev

        Ambil pusing!

        @fastly/esi kini tersedia di npm, sedia untuk ditambahkan pada mana-mana program JavaScript. Gunakannya di tepi dalam program Fastly Compute anda, sudah tentu, tetapi sebenarnya, ia juga berfungsi di luar Compute, selagi persekitaran anda menyokong API pengambilan. Kod sumber penuh tersedia di GitHub.

        Mulakan dengan mengklon salah satu Fiddles di atas dan mengujinya dengan asal-usul anda sendiri, walaupun sebelum anda membuat akaun Fastly. Apabila anda bersedia untuk menerbitkan perkhidmatan anda pada rangkaian global kami, anda boleh mendaftar untuk percubaan percuma Compute dan kemudian mulakan segera dengan perpustakaan ESI pada npm.

        Dengan Compute, kelebihan boleh diprogramkan dan modular – pilih dan gabungkan penyelesaian yang paling sesuai untuk anda, atau bina sendiri. Kami bukan satu-satunya yang boleh menyediakan modul seperti ini untuk Compute. Sesiapa sahaja boleh menyumbang kepada ekosistem dan mengambil daripadanya. Dan, seperti biasa, temui kami di forum komuniti Fastly dan beritahu kami perkara yang telah anda bina!

        Atas ialah kandungan terperinci Bahagian Tepi modular Termasuk komponen untuk Pengiraan JavaScript. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

        Kenyataan Laman Web ini
        Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

        Alat AI Hot

        Undress AI Tool

        Undress AI Tool

        Gambar buka pakaian secara percuma

        Undresser.AI Undress

        Undresser.AI Undress

        Apl berkuasa AI untuk mencipta foto bogel yang realistik

        AI Clothes Remover

        AI Clothes Remover

        Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

        Clothoff.io

        Clothoff.io

        Penyingkiran pakaian AI

        Video Face Swap

        Video Face Swap

        Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

        Alat panas

        Notepad++7.3.1

        Notepad++7.3.1

        Editor kod yang mudah digunakan dan percuma

        SublimeText3 versi Cina

        SublimeText3 versi Cina

        Versi Cina, sangat mudah digunakan

        Hantar Studio 13.0.1

        Hantar Studio 13.0.1

        Persekitaran pembangunan bersepadu PHP yang berkuasa

        Dreamweaver CS6

        Dreamweaver CS6

        Alat pembangunan web visual

        SublimeText3 versi Mac

        SublimeText3 versi Mac

        Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

        Java vs JavaScript: Membersihkan kekeliruan Java vs JavaScript: Membersihkan kekeliruan Jun 20, 2025 am 12:27 AM

        Java dan JavaScript adalah bahasa pengaturcaraan yang berbeza, masing -masing sesuai untuk senario aplikasi yang berbeza. Java digunakan untuk pembangunan aplikasi perusahaan dan mudah alih yang besar, sementara JavaScript digunakan terutamanya untuk pembangunan laman web.

        Komen JavaScript: Penjelasan ringkas Komen JavaScript: Penjelasan ringkas Jun 19, 2025 am 12:40 AM

        JavaScriptcommentsareessentialformaintaining,reading,andguidingcodeexecution.1)Single-linecommentsareusedforquickexplanations.2)Multi-linecommentsexplaincomplexlogicorprovidedetaileddocumentation.3)Inlinecommentsclarifyspecificpartsofcode.Bestpractic

        Bagaimana untuk bekerja dengan tarikh dan masa di JS? Bagaimana untuk bekerja dengan tarikh dan masa di JS? Jul 01, 2025 am 01:27 AM

        Titik berikut harus diperhatikan apabila tarikh pemprosesan dan masa di JavaScript: 1. Terdapat banyak cara untuk membuat objek tarikh. Adalah disyorkan untuk menggunakan rentetan format ISO untuk memastikan keserasian; 2. Dapatkan dan tetapkan maklumat masa boleh diperoleh dan tetapkan kaedah, dan ambil perhatian bahawa bulan bermula dari 0; 3. Tarikh pemformatan secara manual memerlukan rentetan, dan perpustakaan pihak ketiga juga boleh digunakan; 4. Adalah disyorkan untuk menggunakan perpustakaan yang menyokong zon masa, seperti Luxon. Menguasai perkara -perkara utama ini secara berkesan dapat mengelakkan kesilapan yang sama.

        JavaScript vs Java: Perbandingan Komprehensif untuk Pemaju JavaScript vs Java: Perbandingan Komprehensif untuk Pemaju Jun 20, 2025 am 12:21 AM

        JavaScriptispreferredforwebdevelopment, whersjavaisbetterforlarge-scalebackendsystemsandandroidapps.1) javascriptexcelsinceleatinginteractiveWebexperienceswithitsdynamicnatureanddommanipulation.2) javaoffersstrongyblectionandobjection

        Kenapa anda harus meletakkan tag  di bahagian bawah ? Kenapa anda harus meletakkan tag di bahagian bawah ? Jul 02, 2025 am 01:22 AM

        PlacingtagsatthebottomofablogpostorwebpageservespracticalpurposesforSEO,userexperience,anddesign.1.IthelpswithSEObyallowingsearchenginestoaccesskeyword-relevanttagswithoutclutteringthemaincontent.2.Itimprovesuserexperiencebykeepingthefocusonthearticl

        JavaScript: Meneroka jenis data untuk pengekodan yang cekap JavaScript: Meneroka jenis data untuk pengekodan yang cekap Jun 20, 2025 am 12:46 AM

        JavascripthassevenfundamentalDatypes: nombor, rentetan, boolean, undefined, null, objek, andsymbol.1) numberuseadouble-precisionformat, bergunaforwidevaluangesbutbecautiouswithfloating-pointarithmetic.2)

        Apakah peristiwa yang menggelegak dan menangkap di Dom? Apakah peristiwa yang menggelegak dan menangkap di Dom? Jul 02, 2025 am 01:19 AM

        Penangkapan dan gelembung acara adalah dua peringkat penyebaran acara di Dom. Tangkap adalah dari lapisan atas ke elemen sasaran, dan gelembung adalah dari elemen sasaran ke lapisan atas. 1. Penangkapan acara dilaksanakan dengan menetapkan parameter useCapture addeventlistener kepada benar; 2. Bubble acara adalah tingkah laku lalai, useCapture ditetapkan kepada palsu atau ditinggalkan; 3. Penyebaran acara boleh digunakan untuk mencegah penyebaran acara; 4. Acara menggelegak menyokong delegasi acara untuk meningkatkan kecekapan pemprosesan kandungan dinamik; 5. Penangkapan boleh digunakan untuk memintas peristiwa terlebih dahulu, seperti pemprosesan pembalakan atau ralat. Memahami kedua -dua fasa ini membantu mengawal masa dan bagaimana JavaScript bertindak balas terhadap operasi pengguna.

        Apa perbezaan antara Java dan JavaScript? Apa perbezaan antara Java dan JavaScript? Jun 17, 2025 am 09:17 AM

        Java dan JavaScript adalah bahasa pengaturcaraan yang berbeza. 1.Java adalah bahasa yang ditaip dan disusun secara statik, sesuai untuk aplikasi perusahaan dan sistem besar. 2. JavaScript adalah jenis dinamik dan bahasa yang ditafsirkan, terutamanya digunakan untuk interaksi web dan pembangunan front-end.

        See all articles