NodeSS CLIコマンドprocess.argv
を使用すると、オブジェクトを含む変数を関数メソッドに渡すことができますが、オブジェクト内のプロパティ値が見つからないようですこのプロセスが呼び出されたとき。オブジェクトsiteUrl
の2番目のプロパティでエラーが発生していて、process.argv
の情報がコンパイルされているかどうか、またはコマンドを間違って使用しているかどうかはわかりません。 process.argv
をparams
に置き換えた場合、エラーは発生しません。ここでNodejsプロセスCLI変数を含むオブジェクト
は私のターミナルコマンドです:ここで
node app.js params
は私の変数の設定です:ここでは
var siteUrl = encodeURIComponent('http://www.test.com/');
var params = {
auth: auth,
siteUrl: siteUrl,
resource: {
'startDate': moment().subtract(3, 'days').format("YYYY-MM-DD"),
'endDate': moment().subtract(2, 'days').format("YYYY-MM-DD"),
'dimensions': ['query', 'page'],
'dimensionFilterGroups': [{
'filters': [{
'dimension': 'country',
'operator': 'equals',
'expression': 'USA'
}]
}]
}
は、私はまた私のオブジェクトをログに記録するよ私の方法
var query = webmasters.searchanalytics.query(process.argv, function(err, res){
var formattedQueryList = [];
if (err){
console.log('This is the error: ' + err);
} else { ... }
です値が存在することを確認する:
ここconsole.log(params.resource.startDate)
console.log(params.resource.startDate)
console.log(params.resource.endDate)
console.log(params.siteUrl)
console.log(siteUrl)
にconsole.logです:
2017-02-11
2017-02-12
http%3A%2F%2Fwww.test.com%2F
http%3A%2F%2Fwww.test.com%2F
This is the error: Error: Missing required parameters: siteUrl
'process.argv'はオブジェクトではなく文字列の配列です –