github.com/vcilabs/webrpc@v0.5.2-0.20201116131534-162e27b1b33b/gen/javascript/templates/client_helpers.js.tmpl (about)

     1  {{define "client_helpers"}}
     2  const createHTTPRequest = (body = {}, headers = {}) => {
     3    return {
     4      method: 'POST',
     5      headers: { ...headers, 'Content-Type': 'application/json' },
     6      body: JSON.stringify(body || {})
     7    }
     8  }
     9  
    10  const buildResponse = (res) => {
    11    return res.text().then(text => {
    12      let data
    13      try {
    14        data = JSON.parse(text)
    15      } catch(err) {
    16        throw { code: 'unknown', msg: `expecting JSON, got: ${text}`, status: res.status }
    17      }
    18      if (!res.ok) {
    19        throw data // webrpc error response
    20      }
    21      return data
    22    })
    23  }
    24  {{end}}