WebAssembly - Convalida
In questo capitolo, discuteremo la funzione webassembly.validate () che convaliderà l'output .wasm. Il .wasm è disponibile quando compiliamo codice C, C ++ o rust.
È possibile utilizzare i seguenti strumenti per ottenere il codice wasm.
- Wasm Fiddler, disponibile all'indirizzo https://wasdk.github.io/WasmFiddle/ 
- WebAssembly Explorer, disponibile all'indirizzo https://mbebenita.github.io/WasmExplorer/. 
Sintassi
La sintassi è la seguente:
WebAssembly.validate(bufferSource);Parametri
bufferSource- Il bufferSource ha il codice binario che proviene dal programma C, C ++ o Rust. È sotto forma di typedarray o ArrayBuffer.
Valore di ritorno
La funzione restituirà true se il codice .wasm è valido e false in caso contrario.
Proviamo un esempio. Vai a Wasm fiddler , disponibile all'indirizzohttps://wasdk.github.io/WasmFiddle/, inserisci il codice C di tua scelta e giù il codice wasm.
 
 
    Il blocco contrassegnato in rosso è il codice C. Fare clic sul pulsante Build al centro per eseguire il codice.
 
 
    Fare clic sul pulsante Wasm, per scaricare il codice .wasm. Salva il .wasm alla fine e usiamo lo stesso per la convalida.
Esempio
Per esempio: validate.html
<!doctype html>
<html>
   <head> 
      <meta charset="utf-8">
      <title>Testing WASM validate()</title>
   </head>
   <body>
      <script> 
         fetch('program.wasm').then(res => res.arrayBuffer() ).then(function(testbytes) {
         var valid = WebAssembly.validate(testbytes); 
            if (valid) {
               console.log("Valid Wasm Bytes!"); 
            } else {
               console.log("Invalid Wasm Code!"); 
            }
         }); 
      </script> 
   </body>
</html>Ho ospitato il file .html sopra nel server wamp insieme al file .wasm di download. Ecco l'output quando lo provi nel browser.
Produzione
L'output è il menzionato di seguito -
 
                    