Skip to content

tamada/samplewasm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

HTTP GET sample in WASM created by Go lang

Go言語のWASM (Web Assembly) で HTTP GET を呼び出すと,以下のようなデッドロックが発生する.

all goroutines are asleep - deadlock!

解決策として,goroutine を使って呼び出せば良いとされている. それで実際にやってみたのがこのリポジトリの内容である.

使い方

  • make を実行すると,serversite/main.wasm が作成される.
  • serverを実行すると,localhost:8080 に HTTP サーバが建てられる(make startを実行しても良い).
    • site 以下のファイルをそのまま返す簡易HTTPサーバ.cmd/server/main.go にソースコードあり.
  • http://localhost:8080 にアクセスし,テキストフィールドに適当なURLを入力し,「Get Content」ボタンを押すと「Content」の下に内容が表示される.

構成

  • Makefile
    • ビルドファイル.
  • httpget.go
    • 単純に HTTP GET しているファイル.
  • src/wasm/main.go
    • wasmから HTTP GET を goroutine で呼び出している.
  • src/server/main.go
    • 簡易 HTTP サーバのプログラム.
  • site/index.html
    • サンプルの html ファイル.
  • site/sample.js
    • site/index.html のアクションを定義し,wasm を呼び出している.
  • site/wasm_exec.js
    • ${GO_INSTALLED_DIR}/misc/wasm/wasm_exec.js からコピーしたもの.

About

HTTP GET sample in WASM created by Go lang

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors