title: Try... Catch in async await not catching error
body: <p>Why the try...catch is not working for below sample code?</p>
  
  <pre><code>const http2 = require("http2")
  const url = require("url")
  
  
  function sendRequest() {
      return new Promise((resolve, reject) =&gt; {
  
          var r = http2.request({
              "host": "www.google.com",
              "method": "GET",
              "path": "/"
          }, (resp) =&gt; {
              var data = []
              resp.on("data", (chunk) =&gt; {
                  throw ("Error")
              })
              resp.on("end", () =&gt; {
                  console.log("ended")
                  resolve("finished")
              })
              resp.on("error", (e) =&gt; {
                  console.log("error")
                  reject(e)
              })
          })
          r.end()
      })
  }
  
  async function wrapper(){
      try {
          console.log("Sending request")
          await sendRequest()
          console.log("Finished sending Request")
      }catch(e){
          console.log("error!") // Supposed to see this
          console.log(e)
      }
      console.log("All finished") // Supposed to see this
  }
  
  wrapper()
  </code></pre>
  
  <p>Output is as follow:</p>
  
  <pre><code>Sending request
  
  /Users/test-user/test.js:15
                  throw ("Error")
                  ^
  Error
  
  Process finished with exit code 1
  </code></pre>