全部产品
Search
文档中心

Mobile Platform as a Service:Logika keputusan pembukaan URL

更新时间:Jan 27, 2026

Untuk meningkatkan keamanan aplikasi, lakukan validasi URL sebelum Kontainer memanggilnya. Panggilan ke URL yang tidak termasuk dalam daftar putih akan diblokir.

Lakukan validasi URL sebelum memanggil antarmuka berikut:

public class MPNebula {
    /**
    * Memulai URL online.
    *
    * @param url URL online.
    */
    public static void startUrl(String url);
    
    /**
    * Memulai URL online.
    *
    * @param url   URL online.
    * @param param Parameter startup.
    */
    public static void startUrl(String url, Bundle param);
}

// Membuat halaman.
public static final void openH5(String url) {
    if (TextUtils.isEmpty(url)) {
        return;
    }
    H5Service h5Service = LauncherApplicationAgent.getInstance().getMicroApplicationContext()
            .findServiceByInterface(H5Service.class.getName());
    H5Bundle bundle = new H5Bundle();
    Bundle param = new Bundle();
    // URL online yang akan dibuka.
    param.putString(H5Param.LONG_URL,url);
    bundle.setParams(param);
    if (h5Service != null) {
        // Membuat halaman secara sinkron.
        H5Page h5Page=h5Service.createPage(activity,bundle);
        
        // Membuat halaman secara asinkron.
        h5Service.createPageAsync(activity, bundle, h5PageReadyListener);
    }
}
Penting

Lakukan pencocokan URL secara tepat. Minimal, cocokkan scheme dan host dari URI tersebut. Gunakan ekspresi reguler (regex) dengan hati-hati atau hindari sepenuhnya. Jangan gunakan fungsi yang tidak presisi seperti contains, startsWith, endsWith, atau indexOf.