проблема с запросом https - PullRequest
0 голосов
/ 25 июня 2019

Я разработал приложение в OFFICEjs .Это все работает в LOCALHOST.На прошлой неделе программа отлично работала, отправляя данные на сервер и получая с него данные.В понедельник я запустил программу и получил следующую ошибку:

XHR Error.

В выходные дни я не трогал код, поэтому не могу понять, что произошло между нимитеперь запросы https не отправляются на сервер ни POST, ни GET.

Когда я помещаю URL-адрес в браузер, я получаю правильный ответ от сервера, поэтому сервер работает правильно.Единственное, что касается клиента, запрос https даже не запускается!что могло произойти во время выходных, что вызвало проблемы со связью в программе.Вы должны заметить, что даже сейчас или в любое время до сих пор, если вы введете тот же URL в браузере, вы без проблем вернете данные в браузер.

введите описание изображения здесь

Теперь я заметил что-то новое.Я удалил вызов функции https_Last_Order_Number () и вместо этого сделал обычный вызов https внутри функции отправки.Результат - ничто.Я не получаю никакой ошибки, но запрос не запускается вообще!Это тот же самый вызов https, который я делал раньше, и он работал, но теперь вообще не срабатывает

async https_Last_Order_Number(){return new Promise((resolve, reject) => {

    const options = {
        hostname: 'localhost',
        port: 8888,
        path: '/getLastIdOrder',
        method: 'GET'
    }  
    const req = https.request(options,
      (res) => {
        let body = '';
        res.on('data', (chunk) => (body += chunk.toString()));
        res.on('error', reject);
        res.on('end', () => {
          if (res.statusCode >= 200 && res.statusCode <= 299) {

            resolve({statusCode: res.statusCode, headers: res.headers, body: body});
          } else {
            reject('Request failed. status: ' + res.statusCode + ', body: ' + body);
          }
        });
      });
    req.on('error', reject);
    req.end();
  });
}


async send() {

    try {
        await Excel.run( async context => {


            var currentWorksheet = context.workbook.worksheets.getActiveWorksheet();




            var range3 = currentWorksheet.getRange("H14");
            var tmpAcc = ""; //hold current acc to check.
            var check  = 1;  //suppose no problem at begining.
            var numAccRows = 0;
            //var numDuplicate=0;
            //const rankingRange = this.table.columns.getItem("Quantity").getDataBodyRange().load("values");
            let Last_Order_number   // Last order Id, returned as String.      
            let Last_Order_num     // Last order Id, as INT.


            await this.https_Last_Order_Number().then(function(results){

                Last_Order_number = results['body']
                Last_Order_num = parseInt(Last_Order_number) + 1

                return context.sync()
                    .then(function () {

                        for (let i = 0; i < 50; i++) { // for each acc, check for duplicate. 

                            if (accountRange.values[i][0] === "" || check == 0){
                                break;
                            }
                            numAccRows = numAccRows + 1; // count number of rows.
                            tmpAcc = accountRange.values[i][0];
                            for (let j = i+1; j < 50; j++){
                                if (accountRange.values[j][0] === "" ){ //if row empty, means this is no more accounts in this column, thus break. 
                                    break;
                                }
                                if (tmpAcc == accountRange.values[j][0]){ //if the acc is duplicated, break.
                                    check=0;
                                    //numDuplicate=numDuplicate+1;
                                    //let tmpCell="k"+j;
                                    //let range4 = currentWorksheet.getRange(tmpCell);
                                    //range4.values = [[tmpAcc]];
                                    break;
                                } 
                            } 
                        }

                           }        
                        }

                    });
                }).catch(err => {
                    range3.values =[[900]]
                    OfficeHelpers.UI.notify(err);
                    OfficeHelpers.Utilities.log(err);
                  });
        });
    } catch (error) {

        OfficeHelpers.UI.notify(error);
        OfficeHelpers.Utilities.log(error);
    }
}

1 Ответ

1 голос
/ 26 июня 2019

проблема была в том, что срок действия сертификата просто истёк ... это было только на один месяц

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...