Файл JavaScript выглядит нормально для меня, но с синтаксической ошибкой

Когда я запускаю тестовое приложение coffeescript, я получаю эту ошибку "

2018-12-06 02:19:24,681 <NodeTest> [ERROR] [MainThread] node_test.run - NodeJS test for Node v7.9.0 did not pass. Exit status: 1
Std Out: 
Std Error: /opt/node_js/conf.js:25
            osVersion: 'MyOS 1.10.1.21
                       ^^^^^^^^^^^^^^^^^

SyntaxError: неверный или неожиданный токен

Это содержание conf.js:

const require('https');
module.exports = {
  // Endpoint
  endpoint: 'https://123.456.789.876',

  // creds
  access: 'accessblablabla',
  secret: 'secret blablabla',

  // Other options
  s3BucketEndpoint: false,
  s3ForcePathStyle: true,
  httpOptions: {
    agent: new https.Agent({ca: '-----BEGIN CERTIFICATE-----'})
  },

  // OS version
  myOsVersion: 'MyOS 1.10.1.21'
}

Я не могу понять почему myOsVersion: '%s отличается от всего остального в файле. Кто-нибудь может определить, что я делаю не так?

2 ответа

Решение

Оказывается, проблема заключалась в пробелах в строке.

Как и в случае с комментарием @ phix, если я создаю файл вручную, проблем не возникает. У меня есть приложение Python, которое генерирует его. Возможно, это какой-то скрытый персонаж или что-то в этом роде.

В любом случае, мне нужен только номер версии из строки, поэтому мой код Python отредактирован так:

version = std_out.split()[1]

Я вообще не пользуюсь MacOS, но, на мой взгляд, вы должны заявить:

const https = require('https');

В верхней части вашего кода, потому что я вижу, вы используете экземпляр этого (новое ключевое слово). Надеюсь, это поможет вам немного!

Другие вопросы по тегам