2016-03-10 2 views
1

Я пытаюсь получить конечную часть этого URL (в стороне сервера):получать некоторую часть URL

http://localhost:3000/insAds/D79htZY8DQ3YmcscE 

Я имею в виду, я хочу, чтобы получить эту строку:

D79htZY8DQ3YmcscE 

есть аналогичный вопрос: How to get the query parameters in Iron-router?

, но не ответы не могут помочь мне! потому что у меня нет параметров запроса в URL-адресе.

Я знаю, что эти коды дает мне строку, которую я хочу:

this.params.id 

и

Router.current().params.id 

но эти коды работают только в стороне клиента! Я хочу получить эту строку на стороне сервера!

, наконец, я пытаюсь получить эту строку и использовать здесь:

Ads.before.insert(function(userId, doc) { 
    //console.log(this.params.id); 
    doc._categoryId = this.params.id; 
    doc.createdAt = new Date(); 
    doc.createdBy = Meteor.userId(); 
}); 

ответ

1

Вы можете использовать Router.current().params или this.params как этот

Router.route('/insAds/:id', function() { 
    console.log(this.params.id); // this should log D79htZY8DQ3YmcscE in console 
}); 

Проверьте третий пример в Quick Start секции iron router documentation

EDIT: Основываясь на нашем чате,

Ваш крюк

Ads.before.insert(function(userId, doc) { 
    //console.log(this.params.id); 
    doc._categoryId = this.params.id; 
    doc.createdAt = new Date(); 
    doc.createdBy = Meteor.userId(); 
}); 

Изменить его

Ads.before.insert(function(userId, doc) { 
    doc.createdAt = new Date(); 
    doc.createdBy = Meteor.userId(); 
}); 

А затем определить метод метеора в сервере как этот

Meteor.methods({ 
    'myInsertMethod': function (id) { 
     Ads.insert({ 
      _categoryId: id 
     }); 
    } 
}); 

Зов это со стороны клиента, как это

Meteor.call('myInsertMethod', Router.params().id, function (err, res) { 
    console.log (err, res); 
}); 
+0

Я хочу получить эту строку на стороне сервера. 'Router.current(). Params' работает только на стороне клиента. У меня есть эта ошибка с вашим ответом: ** не имеет метода 'current' ** – Roohollah

+0

@Roohollah Можете ли вы дать нам пример кода или контекста, в котором это необходимо, чтобы я мог предложить решить проблему по-другому. – Kishor

+0

ОК. Im редактируя мой вопрос – Roohollah

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