github.com/vcilabs/webrpc@v0.5.2-0.20201116131534-162e27b1b33b/_examples/golang-nodejs/client/main.js (about)

     1  const polyfetch = require('node-fetch')
     2  
     3  async function main() {
     4    const {
     5      ExampleService,
     6      GetUserRequest
     7    } = await import('./client.gen.mjs')
     8  
     9    const svc = new ExampleService('http://127.0.0.1:4242', polyfetch)
    10  
    11    // Expecting "true"
    12    console.log('[A] webrpc -- calling Ping() rpc method (expecting true):')
    13  
    14    svc.ping().then(resp => {
    15      console.log('[A]', {resp})
    16    }).catch((err) => {
    17      console.log('[A]', {err})
    18    })
    19  
    20    // Expecting an error
    21    console.log('[B] webrpc -- calling GetUser() rpc method of an unknown user (expecting a 404):')
    22  
    23    svc.getUser({ req: new GetUserRequest({userID: 911}) }).then(resp => {
    24      console.log('[B]', {resp})
    25    }).catch((err, res) => {
    26      console.log('[B]', {err})
    27    })
    28  
    29    // Expecting some user data
    30    console.log('[C] webrpc -- calling GetUser() rpc method (expecting User object):')
    31  
    32    svc.getUser({ req: new GetUserRequest({userID: 966}) }).then(resp => {
    33      console.log('[C]', {resp})
    34    }).catch((err, res) => {
    35      console.log('[C]', {err})
    36    })
    37  
    38  }
    39  
    40  main()