All Products
Search
Document Center

ApsaraVideo VOD:Migrasi Resource Video-on-Demand

Last Updated:Mar 11, 2026

ApsaraVideo VOD memungkinkan Anda memindahkan resource dari platform pihak ketiga ke ApsaraVideo VOD serta memindahkan resource video antar Akun Alibaba Cloud. Topik ini menjelaskan cara melakukan migrasi tersebut.

Skenario dan metode migrasi

ApsaraVideo VOD mendukung berbagai metode migrasi, termasuk pemindahan resource dari website pribadi atau layanan cloud pihak ketiga, resource OSS dalam atau antar Akun Alibaba Cloud, serta resource ApsaraVideo VOD antar Akun Alibaba Cloud.

Setelah migrasi berhasil, ApsaraVideo VOD akan menghasilkan informasi video baru, seperti ID video, URL pemutaran, dan URL gambar mini. Anda harus menghubungkan secara manual informasi video sebelum dan sesudah migrasi.

Skenario Migrasi

Metode Migrasi

Alat Migrasi

Migrasi resource pihak ketiga ke ApsaraVideo VOD

  • Batch URL Pull (Direkomendasikan)

  • ApsaraVideo VOD upload SDK

  • ApsaraVideo VOD API

Migrasi resource OSS ke ApsaraVideo VOD dalam satu Akun Alibaba Cloud

  • (Direkomendasikan) URL resource

  • ApsaraVideo VOD upload SDK

  • ApsaraVideo VOD API

Migrasi resource OSS ke ApsaraVideo VOD antar Akun Alibaba Cloud

  • Batch URL pulling (Direkomendasikan)

  • ApsaraVideo VOD upload SDK

  • ApsaraVideo VOD API

Migrasi resource ApsaraVideo VOD antar Akun Alibaba Cloud

  • URL Batch Pull (direkomendasikan)

  • ApsaraVideo VOD upload SDK

  • ApsaraVideo VOD API

Sebelum memulai

  • Akun Alibaba Cloud telah dibuat dan verifikasi identitas telah lengkap. Untuk membuat Akun Alibaba Cloud, kunjungi website resmi Alibaba Cloud. Untuk informasi lebih lanjut, lihat Buat Akun Alibaba Cloud.

  • Dapatkan pasangan AccessKey untuk menyelesaikan verifikasi identitas agar Anda dapat memanggil operasi API ApsaraVideo VOD. Untuk informasi lebih lanjut tentang cara mendapatkan pasangan AccessKey, lihat Buat pasangan AccessKey.

    Catatan

    Jika Anda menggunakan Pengguna RAM untuk melakukan migrasi, Anda harus membuat Pengguna RAM terlebih dahulu sebelum mendapatkan pasangan AccessKey. Untuk informasi lebih lanjut, lihat Akses ApsaraVideo VOD sebagai Pengguna RAM.

(Direkomendasikan) Unggah resource secara batch berdasarkan URL

Skenario

Jika file yang ingin Anda migrasikan tidak disimpan di server atau perangkat lokal tetapi dapat diakses publik melalui Internet, Anda dapat menggunakan unggah batch berbasis URL. Metode ini memungkinkan Anda mengunggah banyak file dengan cepat melalui jaringan internal dan mengurangi penggunaan trafik.

Batasan

Unggah batch berbasis URL hanya didukung di wilayah China (Shanghai), China (Beijing), China (Shenzhen), Singapura, dan AS (Silicon Valley). Anda harus menggunakan metode migrasi lain di wilayah lainnya. Untuk informasi lebih lanjut tentang titik akhir, lihat ID wilayah ApsaraVideo VOD.

Catatan penggunaan

  • Pekerjaan unggah berbasis URL bersifat asinkron. Setelah Anda mengirim pekerjaan, proses tersebut mungkin memakan waktu berjam-jam bahkan berhari-hari untuk selesai. Jika Anda memerlukan ketepatan waktu tinggi, gunakan upload SDK sebagai gantinya.

  • Setiap kali Anda mengirim pekerjaan unggah berbasis URL, ApsaraVideo VOD akan membuat resource media baru dengan ID media baru.

Proses migrasi点播资源迁移-URL..png

Prosedur

  1. Integrasikan SDK sisi server ApsaraVideo VOD.

    Contoh ini menggunakan ApsaraVideo VOD SDK untuk Java. Untuk informasi lebih lanjut tentang cara menggunakan SDK dalam bahasa pemrograman lain, lihat Server-side SDK.

    Untuk mengunduh SDK untuk Java, lihat Server-side SDK. Untuk menginstal SDK untuk Java, lihat Instalasi.

  2. Persiapkan resource yang akan dimigrasikan.

    Catatan
    • Persiapkan URL unduh untuk semua file yang akan dimigrasikan. Jika URL memerlukan penandatanganan, pastikan URL tersebut tetap valid selama periode pengunduhan.

    • URL unduh harus berupa path lengkap yang mencakup nama file dan ekstensi file, seperti https://****.mp4.

  3. Panggil operasi UploadMediaByURL menggunakan SDK sisi server ApsaraVideo VOD untuk mengunggah resource secara batch.

    Contoh berikut menunjukkan cara memanggil operasi tersebut dalam Java. Untuk contoh dalam bahasa pemrograman lain, lihat UploadMediaByURL.

    Anda juga dapat melakukan debugging online menggunakan OpenAPI Explorer.

    Tampilkan contoh kode dalam Java

    import com.alibaba.fastjson.JSON;
    import com.alibaba.fastjson.JSONArray;
    import com.alibaba.fastjson.JSONObject;
    import com.aliyuncs.DefaultAcsClient;
    import com.aliyuncs.auth.AlibabaCloudCredentials;
    import com.aliyuncs.auth.EnvironmentVariableCredentialsProvider;
    import com.aliyuncs.exceptions.ClientException;
    import com.aliyuncs.profile.DefaultProfile;
    import com.aliyuncs.vod.model.v20170321.UploadMediaByURLRequest;
    import com.aliyuncs.vod.model.v20170321.UploadMediaByURLResponse;
    
    import java.net.URLEncoder;
    
    /**
     * Contoh kode untuk fitur unggah batch berdasarkan URL
     *
     */
    public class AudioOrVideoUploadByUrl {
    
        /** 
         * Baca informasi AccessKey
         */
        public static DefaultAcsClient initVodClient() throws ClientException {
        // Wilayah tempat ApsaraVideo VOD diaktifkan.
        String regionId = "cn-shanghai"; 
        // Pasangan AccessKey dari Akun Alibaba Cloud memiliki izin atas semua operasi API. Kami menyarankan Anda menggunakan Pengguna RAM untuk memanggil operasi API atau melakukan O&M rutin.
        // Kami sangat menyarankan agar Anda tidak menyematkan ID AccessKey dan rahasia AccessKey secara langsung dalam kode proyek Anda. Jika tidak, pasangan AccessKey tersebut dapat bocor dan mengancam keamanan semua resource Anda.
        // Contoh ini menunjukkan cara membaca pasangan AccessKey dari variabel lingkungan untuk mengotentikasi akses API. Sebelum menjalankan kode contoh, konfigurasikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET.
        DefaultProfile profile = DefaultProfile.getProfile(regionId, System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID"), System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET"));
        DefaultAcsClient client = new DefaultAcsClient(profile);
        return client;
        }
    
        /**
         * Unggah batch berdasarkan URL
         *
         * @param client Klien yang mengirim permintaan
         * @return UploadMediaByURLResponse Data respons untuk unggah batch berdasarkan URL
         * @throws Exception
         */
        public static UploadMediaByURLResponse uploadMediaByURL(DefaultAcsClient client) throws Exception {
            UploadMediaByURLRequest request = new UploadMediaByURLRequest();
            String url = "http://video_01.mp4";
            String encodeUrl = URLEncoder.encode(url, "UTF-8");
            // URL file sumber video
            request.setUploadURLs(encodeUrl);
    
            // Metadata video yang akan diunggah
            JSONObject uploadMetadata = new JSONObject();
            // URL file sumber video yang akan diunggah. Nilai ini harus sesuai dengan URL dalam UploadURLs agar berlaku.
            uploadMetadata.put("SourceUrl", encodeUrl);
            // Judul video
            uploadMetadata.put("Title", "contoh unggah berdasarkan url");
    
            JSONArray uploadMetadataList = new JSONArray();
            uploadMetadataList.add(uploadMetadata);
            request.setUploadMetadatas(uploadMetadataList.toJSONString());
    
            // UserData: Pengaturan parameter yang ditentukan pengguna. Tetapkan parameter ini jika Anda perlu menentukan alamat webhook dan data transmisi langsung. Parameter ini opsional.
            JSONObject userData = new JSONObject();
    
            // Pengaturan callback UserData
            // Pengaturan callback pesan. Jika parameter ini ditetapkan, pengaturan ini akan menggantikan pengaturan notifikasi event global.
            JSONObject messageCallback = new JSONObject();
            // Tetapkan alamat webhook
            messageCallback.put("CallbackURL", "http://192.168.0.0/16");
            // Tetapkan tipe callback. Nilai default: http.
            messageCallback.put("CallbackType", "http");
            userData.put("MessageCallback", messageCallback.toJSONString());
    
            JSONObject extend = new JSONObject();
            extend.put("MyId", "user-defined-id");
            userData.put("Extend", extend.toJSONString());
    
            request.setUserData(userData.toJSONString());
    
            return client.getAcsResponse(request);
        }
    
        /** 
         * Contoh permintaan
         */
        public static void main(String[] argv) {
    
            try {
                DefaultAcsClient client = initVodClient();
                UploadMediaByURLResponse response = uploadMediaByURL(client);
                System.out.print("UploadJobs = " + JSON.toJSONString(response.getUploadJobs()) + "\n");
                System.out.print("RequestId = " + response.getRequestId() + "\n");
            } catch (Exception e) {
                System.out.print("ErrorMessage = " + e.getLocalizedMessage());
            }
        }
    
    }
  4. Ambil hasil unggah.

    Metode 1: Gunakan notifikasi event

    ApsaraVideo VOD mendukung callback HTTP dan callback MNS. Setelah Anda mengonfigurasi notifikasi event, ApsaraVideo VOD akan mengirim notifikasi saat pemrosesan media selesai, misalnya ketika unggah atau transkoding selesai. Untuk informasi lebih lanjut tentang konfigurasi, lihat Notifikasi event.

    Tipe event untuk unggah batch berbasis URL adalah UploadByURLComplete. Anda dapat mengambil informasi seperti status pekerjaan dari respons callback.

    • Contoh callback untuk unggah yang berhasil

      { 
        "Status": "success",
        "EventTime": "2017-03-20T07:49:17Z",
        "EventType": "UploadByURLComplete", 
        "VideoId": "43q9fjdun3f****", 
        "JobId": "4c815bjs83j1****", 
        "SourceURL ": "http://example.aliyundoc.com/27ffc438-164d55217ef-0005-6884-51a-1****.mp4",
        "Size":"123456"
      }
    • Contoh callback untuk unggah yang gagal

      { 
        "Status": "fail",
        "EventTime": "2017-03-20T07:49:17Z",
        "EventType": "UploadByURLComplete", 
        "ErrorCode ": "URLInvalidError ", 
        "ErrorMessage ": "download video failed by the url, please check it", 
        "JobId": "4c815bjsued****" ,
        "SourceURL ": "http://example.aliyundoc.com/27ffc438-164d55217ef-0005-6884-51a-1****.mp4",
      }

    Metode 2: Panggil operasi API

    Panggil operasi GetURLUploadInfos untuk menanyakan status pekerjaan unggah berbasis URL.

Unggah resource menggunakan layanan unggah yang dibangun sendiri

Jika unggah batch berbasis URL tidak didukung di wilayah layanan Anda atau Anda memerlukan ketepatan waktu unggah yang tinggi, Anda dapat mengunduh file tersebut dan menggunakan ApsaraVideo VOD upload SDK untuk mengunggahnya. Jika Anda menerapkan layanan unggah pada instance Elastic Compute Service (ECS), Anda dapat memilih untuk mengunggah melalui jaringan internal atau Internet berdasarkan wilayah instance ECS tersebut.

Unduh dan unggah melalui jaringan internal

Skenario

Jika layanan unggah Anda berjalan pada instance ECS di wilayah yang sama dengan file video sumber, Anda dapat memindahkan resource OSS dalam atau antar Akun Alibaba Cloud, atau resource ApsaraVideo VOD antar Akun Alibaba Cloud melalui jaringan internal.

Proses migrasi点播资源迁移-内网..png

Prasyarat

Layanan unggah Anda berjalan pada instance ECS di wilayah yang sama dengan file video sumber.

Prosedur

  1. Persiapkan dan simpan alamat jaringan internal dari resource OSS atau ApsaraVideo VOD yang akan dimigrasikan.

    Catatan

    Jika URL resource memerlukan penandatanganan, pastikan URL tersebut tetap valid selama periode pengunduhan.

    • Resource video on-demand

      1. Panggil operasi GetMezzanineInfo untuk mengambil alamat OSS dari objek. Tetapkan parameter OutputType ke oss.

      2. Tambahkan -internal setelah wilayah OSS untuk mengonversi alamat OSS menjadi alamat jaringan internal.

    • Resource OSS

      1. Anda dapat menampilkan daftar file untuk mendapatkan daftar objek, dari mana Anda dapat mengambil dan menyimpan alamat sumber resource tertentu.

      2. Tambahkan -internal setelah wilayah OSS untuk mengonversi alamat OSS menjadi alamat jaringan internal.

    Contoh berikut menunjukkan alamat sebelum dan sesudah modifikasi:

    URL Asal OSS

    Alamat jaringan pribadi yang dimodifikasi

    outin-67870fd5b29****98a3900163e1c35d5.oss-cn-shanghai.aliyuncs.com/customerTrans/2a13b91506f9158f****7317f4a9d4c9/30f24681-1718d5c6237-**4bd.mp4

    outin-67870fd5b29****98a3900163e1c35d5.oss-cn-shanghai-internal.aliyuncs.com/customerTrans/2a13b91506f9158f****7317f4a9d4c9/30f24681-1718d5c6237-**4bd.mp4

    Untuk informasi lebih lanjut tentang alamat jaringan internal, lihat Akses resource OSS dari instance ECS menggunakan titik akhir internal OSS.

  2. Siapkan layanan unggah.

    Catatan

    Terapkan layanan unggah pada instance ECS di wilayah yang sama dengan bucket OSS ApsaraVideo VOD. Di Tiongkok daratan, wilayah default untuk bucket OSS adalah China (Shanghai). Setelah penerapan, Anda harus menetapkan parameter regionId ke wilayah ini. Saat Anda menggunakan upload SDK, unggah akan secara otomatis menggunakan jaringan internal.

    Untuk contoh kode, lihat Siapkan layanan unggah. Kami menyarankan Anda menggunakan ApsaraVideo VOD upload SDK.

  3. Jalankan kode unggah dari Langkah 2 untuk mengunggah video ke ApsaraVideo VOD.

    Gunakan alamat jaringan internal sebagai path file dalam permintaan unggah.

Unduh dan unggah melalui Internet

Skenario

Jika Anda tidak menerapkan layanan unggah pada instance ECS, atau instance ECS dan file video sumber berada di wilayah yang berbeda, Anda dapat menggunakan Internet untuk mengunduh dan mengunggah file.

Proses migrasi点播资源迁移-公网..png

Prosedur

  1. Persiapkan dan simpan alamat file sumber dari resource yang akan dimigrasikan.

    Catatan
    • Jika URL resource memerlukan penandatanganan, pastikan URL tersebut tetap valid selama periode pengunduhan.

    • Alamat file sumber harus berupa path lengkap yang mencakup nama file dan ekstensi file, seperti https://****.mp4.

    • Resource video on-demand

      1. Panggil operasi SearchMedia untuk memfilter ID video yang akan dimigrasikan.

      2. Panggil operasi GetMezzanineInfo untuk mengambil alamat file sumber dari semua video yang akan dimigrasikan.

        Catatan
        • Contoh ini menggunakan operasi GetMezzanineInfo untuk mengambil alamat file sumber. Anda juga dapat mengambilnya dari konsol ApsaraVideo VOD. Untuk informasi lebih lanjut, lihat Ekspor aset media.

        • Jika Anda ingin menggunakan aliran yang telah dikodekan ulang sebagai file sumber, Anda dapat menghasilkannya menggunakan ApsaraVideo VOD. Untuk informasi lebih lanjut, lihat Manajemen aset media.

    • Resource OSS

      Tampilkan daftar objek yang akan dimigrasikan dan ambil alamat file sumbernya. Untuk informasi lebih lanjut, lihat Tampilkan daftar objek.

    • Resource pihak ketiga (data, seperti video, yang disimpan di website pribadi atau di cloud)

      Persiapkan dan simpan URL unduh untuk semua file yang akan dimigrasikan.

  2. Siapkan layanan unggah.

    Untuk contoh kode, lihat Siapkan layanan unggah. Kami menyarankan Anda menggunakan ApsaraVideo VOD upload SDK.

    Catatan

    Untuk melacak pemetaan antara URL file sumber dan ID video yang diunggah, Anda dapat mencatatnya dalam program unggah Anda. Misalnya, Anda dapat mencatatnya dalam log atau menulisnya ke metadata aset media selama proses unggah. Pilih metode yang sesuai dengan kasus penggunaan Anda. Jika Anda menggunakan operasi UploadMediaByURL, responsnya mencakup URL file sumber. Anda dapat menggunakan informasi ini sesuai kebutuhan.

  3. Jalankan kode unggah dari Langkah 2 untuk mengunggah video ke ApsaraVideo VOD.

    Gunakan alamat file sumber secara langsung dalam permintaan unggah.

  4. (Opsional) Kelola resource ApsaraVideo VOD.

    Setelah migrasi berhasil, Anda dapat mengelola resource menggunakan pemetaan antara URL file sumber dan ID video yang diunggah.

Tambahkan bucket OSS ke ApsaraVideo VOD dan daftarkan resource

Skenario

Jika resource disimpan dalam bucket OSS di bawah Akun Alibaba Cloud yang sama, Anda dapat menambahkan bucket tersebut ke ApsaraVideo VOD dan mendaftarkan resource tersebut. Metode ini menghindari kebutuhan untuk mengunggah ulang resource.

Batasan

  • Hanya bucket OSS dengan kelas penyimpanan Standard yang didukung.

  • Maksimal 10 bucket OSS dapat ditambahkan per wilayah.

Prosedur

  1. Tambahkan bucket OSS yang berisi resource yang akan dimigrasikan ke ApsaraVideo VOD.

    Untuk petunjuk langkah demi langkah dan deskripsi parameter, lihat Kelola bucket penyimpanan.

  2. Daftarkan resource OSS ke ApsaraVideo VOD dengan memanggil operasi API.

    1. Tampilkan daftar semua objek dalam bucket menggunakan API atau SDK OSS. Untuk informasi lebih lanjut, lihat Tampilkan daftar objek.

    2. Panggil operasi RegisterMedia untuk mendaftarkan file media dan menghasilkan ID media. Tetapkan FileURL dalam parameter RegisterMetadatas ke path lengkap objek, termasuk nama domain OSS. Contohnya:

      https://oss-cn-hangzhou.aliyuncs.com/video/example.mp4

Siapkan layanan unggah

Untuk memindahkan resource pihak ketiga atau resource antar Akun Alibaba Cloud, Anda harus mengunduh video asli dan mengunggahnya ke ApsaraVideo VOD. ApsaraVideo VOD menyediakan dua alat unggah: upload SDK dan API sisi server. Anda dapat mengimplementasikan layanan unggah Anda menggunakan salah satu alat tersebut. Kami menyarankan Anda menggunakan upload SDK karena melakukan unggah sinkron dan lebih efisien. Menggunakan API sisi server bersifat kompleks dan rentan kesalahan.

Langkah-langkah untuk menyiapkan layanan unggah

  1. Integrasikan upload SDK atau SDK sisi server.

    Pilih SDK berdasarkan bahasa pemrograman Anda. Untuk informasi lebih lanjut tentang cara mengintegrasikan upload SDK, lihat Ikhtisar Upload SDK. Untuk informasi lebih lanjut tentang cara mengintegrasikan SDK sisi server, lihat Server-side SDK.

  2. Tulis kode layanan unggah. Lihat contoh berikut.

Contoh kode Upload SDK (direkomendasikan)

Contoh berikut menggunakan Java. Untuk contoh dalam bahasa pemrograman lain, lihat Ikhtisar Upload SDK.

import com.aliyun.vod.upload.impl.UploadVideoImpl;
import com.aliyun.vod.upload.req.UploadStreamRequest;
import com.aliyun.vod.upload.resp.UploadStreamResponse;
import java.io.*;
import java.net.URL;

/**
 * Gunakan upload SDK untuk mengunggah file video.
 */
public class UploadStreamDemo {
    /**
     * Operasi unggah stream.
     *
     * @param accessKeyId
     * @param accessKeySecret
     * @param title
     * @param fileName
     * @param inputStream
     */
    private static void testUploadStream(String accessKeyId, String accessKeySecret, String title, String fileName, InputStream inputStream) {
        UploadStreamRequest request = new UploadStreamRequest(accessKeyId, accessKeySecret, title, fileName, inputStream);
        
        /* Tentukan pengaturan callback khusus untuk notifikasi event. Untuk informasi lebih lanjut tentang parameter, lihat Tipe data dasar. */
        //request.setUserData(""{\"Extend\":{\"test\":\"www\",\"localId\":\"xxxx\"},\"MessageCallback\":{\"CallbackURL\":\"http://example.aliyundoc.com\"}}"");
        /* Opsional. Tentukan ID kategori video. */
        //request.setCateId(0);
        /* Opsional. Tentukan tag video. Pisahkan beberapa tag dengan koma (,). */
        //request.setTags("Tag 1,Tag 2");
        /* Opsional. Tentukan deskripsi video. */
        //request.setDescription("Deskripsi video");
        /* Opsional. Tentukan URL gambar mini. Contoh: http://****.example.com/image_01.jpg. */
        //request.setCoverURL("<Your CoverURL>");
        /* Opsional. Tentukan ID grup templat. */
        //request.setTemplateGroupId("8c4792cbc8694e****fd5330e56a33d");
        /* Opsional. Tentukan ID alur kerja. */
        //request.setWorkflowId("d4430d07361f****1339577859b0177b");
        /* Opsional. Tentukan wilayah penyimpanan. */
        //request.setStorageLocation("outin-20170323****266-5sejdln9o.oss-cn-shanghai.aliyuncs.com");
        /* Tentukan wilayah akses VOD. */
        request.setApiRegionId("cn-shanghai");
        /* Tentukan wilayah tempat instance ECS diterapkan. */
        // request.setEcsRegionId("cn-shanghai");
        UploadVideoImpl uploader = new UploadVideoImpl();
        UploadStreamResponse response = uploader.uploadStream(request);
        System.out.print("RequestId=" + response.getRequestId() + "\n"); // Tentukan ID permintaan yang dikirim ke VOD.
        if (response.isSuccess()) {
            System.out.print("VideoId=" + response.getVideoId() + "\n");
        } else { // Jika URL callback yang Anda tentukan tidak valid, proses unggah tidak terpengaruh. ID video dan kode kesalahan akan dikembalikan. Jika ID video kosong, unggah gagal. Analisis penyebab berdasarkan kode kesalahan yang dikembalikan.
            System.out.print("VideoId=" + response.getVideoId() + "\n");
            System.out.print("ErrorCode=" + response.getCode() + "\n");
            System.out.print("ErrorMessage=" + response.getMessage() + "\n");
        }
    }

    public static void main(String[] args) {
        /**
         * Tentukan URL video sumber, berikan informasi tentang video, dan unggah video tersebut.
         */
        InputStream inputStream = null;
        // URL video. Contoh: http://example.aliyundoc.com/video/****.mp4.
        String url = "<Your File URL>";
        try {
            inputStream = new URL(url).openStream();
        } catch (IOException e) {
            e.printStackTrace();
        }
        // Pasangan AccessKey dari Akun Alibaba Cloud memiliki izin untuk memanggil semua operasi API. Kami menyarankan Anda menggunakan pasangan AccessKey dari Pengguna RAM untuk memanggil operasi API atau melakukan O&M rutin. 
        // Kami menyarankan agar Anda tidak menyertakan pasangan AccessKey (ID AccessKey dan rahasia AccessKey) dalam kode proyek Anda. Jika tidak, pasangan AccessKey tersebut dapat bocor dan keamanan semua resource dalam akun Anda dapat terganggu. 
        // Dalam contoh ini, ApsaraVideo VOD membaca pasangan AccessKey dari variabel lingkungan untuk mengimplementasikan verifikasi identitas untuk akses API. Sebelum menjalankan kode contoh, konfigurasikan variabel lingkungan ALIBABA_CLOUD_ACCESS_KEY_ID dan ALIBABA_CLOUD_ACCESS_KEY_SECRET. 
        String accessKeyId = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_ID");
        String accessKeySecret = System.getenv("ALIBABA_CLOUD_ACCESS_KEY_SECRET");

        // Dalam kode berikut, ID AccessKey dan Rahasia AccessKey adalah pasangan AccessKey yang Anda peroleh. <Your Video Title> adalah judul video. <Your Video with File Extension> adalah nama file video yang mencakup ekstensi nama file, seperti video-1.mp4. 
        testUploadStream(accessKeyId, accessKeySecret, "<Your Video Title>", "<Your Video with File Extension>", inputStream);
    }
}

Contoh kode API sisi server (tidak direkomendasikan)

Untuk menyiapkan layanan unggah menggunakan API sisi server, Anda harus mengimplementasikan seluruh logika unggah sendiri. Ini mencakup pengambilan URL unggah dan kredensial dari ApsaraVideo VOD, dekode Base64 kredensial dan URL tersebut, serta menggunakan SDK OSS untuk mengunggah file media. Metode ini kompleks dan rentan kesalahan. Kami menyarankan Anda menggunakan upload SDK sebagai gantinya. Untuk logika unggah lengkap, lihat Unggah file media dengan memanggil API ApsaraVideo VOD.