2017-01-19 2 views
1

, когда я использую какой-либо пакет в своем приложении, например (meteor add outatimeime: jwt-simple ) Я попробовал var jwt = Meteor.require('jwt-simple'). В консоли есть ошибка Ошибка в сервере OAuth: Meteor.require не является функцией. Какой правильный способ использования пакета? Это я использую в файлах на стороне сервера. Существует ли разница между потребностью в пакете на стороне сервера или на стороне клиента?Ошибка при использовании в Meteor JS

ответ

2

Согласно документации пакета, вы обращаетесь к нему, как это:

var jwt = require('jwt-simple'); 

Этот пакет также доступен на НОМ, и это предпочтительный способ использования пакетов в настоящее время (с атмосферой вы зависимы от обновлений из атмосферы пакета автора, и с НПМ вы можете получить обновления, как они будут опубликованы)

Таким образом, вы должны быть в состоянии следовать документации Метеор о том, как использовать их:

Using npm Packages

To use an npm package from a file in your application you simply import the name of the package:

import jwt from 'jwt-simple'; 

// this is equivalent to the standard node require (if the above doesn't work): 
const jwt = require('jwt-simple'); 

Источник: https://guide.meteor.com/using-npm-packages.html

В любом случае, то вы должны быть в состоянии использовать JWT, чтобы делать вещи, например:

// encode 
var token = jwt.encode(payload, secret); 
+0

Здравствуйте, спасибо. Я использую собственный пакет для auth (например: accounts-github). И там на стороне сервера я хочу использовать jwt-decode. Я пишу 'import jwt из 'jwt-simple';' в верхней части и 'const jwt = require ('jwt-simple');' в одной из моих функций, но я получаю эту ошибку: [ошибка из CLI] (http : //image.prntscr.com/image/e58d4023d2ce4a628897c154f3b1fb30.png) – user3045654

+0

Если он жалуется на «импорт», это означает, что он не поддерживает ES6. Некоторые функции сервера запускают простой javascript, поэтому вы должны использовать синтаксис «require» там – Mikkel

+0

вы имеете в виду написать: 'Meteor.require ('jwt-simple')', но это вызывает ошибку ( – user3045654

0

я имел те же проблемы, с другой библиотекой, и я использовал Meteor.npmRequire вместо требовать, чтобы решить вопрос. Попробуйте Meteor.npmRequire ('jwt-simple').

С наилучшими пожеланиями,

Dino

Смежные вопросы