Rest 我想现在从api下载所有来自服务的报告,而不提报告id?

Rest 我想现在从api下载所有来自服务的报告,而不提报告id?,rest,servicenow,servicenow-rest-api,Rest,Servicenow,Servicenow Rest Api,此URL将只下载提到id的报告,而不提及报告id。\u如何获取所有报告?这是一些粗略的nodejs代码,但应该让您开始 var https = require('https'); var username = ''; var password = ''; var url = 'dev32369.service-now.com'; var auth = 'Basic ' + new Buffer(username + ':' + password).toString('base64'); http


此URL将只下载提到id的报告,而不提及报告id。\u如何获取所有报告?

这是一些粗略的nodejs代码,但应该让您开始

var https = require('https');
var username = '';
var password = '';
var url = 'dev32369.service-now.com';
var auth = 'Basic ' + new Buffer(username + ':' + password).toString('base64');
https.request({
  host: url,
  port: 443,
  path: '/api/now/table/sys_report?sysparm_query=field_listISNOTEMPTY&sysparm_fields=sys_id,title,filter,field,table,field_list&sysparm_limit=2',
  method: 'GET',
  headers: {
    'Authorization': auth,
    'Accept': 'application/json',
    'Content-Type': 'application/json'
  }
}, function (reportResponse) {
  console.log('STATUS: ' + reportResponse.statusCode);
  // console.log('HEADERS: ' + JSON.stringify(res.headers));
  var reportResponseBody = '';
  reportResponse.setEncoding('utf8');
  reportResponse.on('data', function (chunk) {
    reportResponseBody += chunk;
    // console.log('BODY: ' + chunk);
  });
  reportResponse.on('end', function () {
    var reports = JSON.parse(reportResponseBody).result;
    console.log(reports);
    if (reports[0].field_list != '') {
      for (var x = 0; x < reports.length; x++) {
        var report = reports[x];
        var path = '';
        path += '/api/now/table/' + report.table;
        path += '?sysparm_fields=' + report.field_list;
        path += '&sysparm_query=' + encodeURIComponent(report.filter);
        path += '&sysparm_display_value=true';
        path += '&sysparm_exclude_reference_link=true';
        // path += '&sysparm_limit=2';
        console.log(path);
        var optionsCSV = {
          host: url,
          port: 443,
          path: path,
          method: 'GET',
          headers: {
            'Authorization': auth,
            'Accept': 'application/json',
            'Content-Type': 'application/json'
          }
        };
        console.log(optionsCSV);
        https.request(optionsCSV, function (csvResponse) {
          try {
            var csvResponseBody = '';
            csvResponse.on('data', function (chunk) {
              console.log('downloading report[' + report.title + ']...');
              csvResponseBody += chunk;
            });
            csvResponse.on('end', function () {
              //console.log(csvResponseBody);
              var csvResponseObj = JSON.parse(csvResponseBody).result;
              console.log(csvResponseObj);
              //this is a json obj but you can rewriet is csv here
            });
            csvResponse.on('error', function (err) {
              console.log(err);
            });
          } catch (e) {
            console.log(e);
          }
        }).end();
      }
    }
  });
}).end();
var https=require('https');
var用户名=“”;
var密码=“”;
var url='dev32369.service now.com';
var auth='Basic'+新缓冲区(用户名+':'+密码).toString('base64');
https.request({
主持人:url,,
港口:443,
路径:'/api/now/table/sys\u report?sysparm\u query=field\u listISNOTEMPTY&sysparm\u fields=sys\u id、title、filter、field、table、field\u list&sysparm\u limit=2',
方法:“GET”,
标题:{
“授权”:auth,
“接受”:“应用程序/json”,
“内容类型”:“应用程序/json”
}
},函数(reportResponse){
console.log('STATUS:'+reportResponse.statusCode);
//log('HEADERS:'+JSON.stringify(res.HEADERS));
var reportResponseBody='';
reportResponse.setEncoding('utf8');
reportResponse.on('data',函数(区块){
reportResponseBody+=chunk;
//log('BODY:'+chunk);
});
reportResponse.on('end',function(){
var reports=JSON.parse(reportResponseBody).result;
控制台日志(报告);
如果(报告[0]。字段列表!=''){
对于(var x=0;x
用某种语言编写一些代码以进行连续调用?$user=“xxxx”$Pwd=ConvertTo SecureString'xxxxxx'-AsPlainText-Force$cred=New Object System.Management.Automation.PSCredential($user,$Pwd)$query=”“Invoke RestMethod-uri$query-Credential$cred-OutFile“path.csv”我有一个powershell脚本,它工作得很好,但每次我都需要将report_id放入$query中。取而代之的是,有任何URL可以同时获取所有报告吗?我不知道。