【问题标题】:Electrons response not always returns 'end'电子响应并不总是返回“结束”
【发布时间】:2018-07-24 23:47:08
【问题描述】:

我正在编写读取 JSON Web 服务的小型电子应用程序,我注意到有时“响应”对象不发送“结束”事件。知道我做错了什么吗? 此外,我的 Web 服务在发送多部分分块数据时工作得很好,我可以看到它作为 console.log(BODY: ${chunk}) 的返回。

getDataBtn.addEventListener('click',function(event){
      var autoryzator = document.getElementById('autoryzator').value;
      var kwartal = document.getElementById('kwartal').value;
      var rok = document.getElementById('rok').value;
      console.log( `http://go/ankieta/default/purchase_order?approver=${autoryzator}&qtr=${kwartal}&year=${rok}`);
      var request = net.request({
        method: 'GET',
        url: `http://go/ankieta/default/purchase_order?approver=${autoryzator}&qtr=${kwartal}&year=${rok}`,
        port: 80
      })
      var authorize = document.getElementById('authorize');
      var jsdata;
      var data='';
      console.log('connecting ...');
      request.on('response', (response) => {
          console.log(`STATUS: ${response.statusCode}`)
          console.log(`HEADERS: ${JSON.stringify(response.headers)}`)
          response.on('data', (chunk) => {
            console.log(`BODY: ${chunk}`)
            var body = chunk.toString('utf8');
            data=data+body
          })
          response.on('end', () => {
            console.log('No more data in response.')
            console.log(data)
            jsdata=JSON.parse(data);
            var data_ = jsdata['data'];
        
        /// some app logic goes here
          })
          response.on('error', (error) => {
            console.log(`ERROR: ${JSON.stringify(error)}`)
            ret = JSON.stringify(error);
          })
        })
        request.end();

      })

【问题讨论】:

  • 代码不是很清楚,能不能把变量声明加进去?
  • @LeonardoBuscemi 希望现在更清楚。

标签: javascript json electron


【解决方案1】:

你可以试试这个:

request.setHeader('Connection', 'keep-alive, close')
request.setHeader('Cache-Control', 'no-cache')
request.setHeader('Accept-Encoding', '*')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-05-19
    • 1970-01-01
    • 2021-03-28
    • 1970-01-01
    • 1970-01-01
    • 2022-10-20
    • 2012-08-01
    • 2021-09-08
    相关资源
    最近更新 更多