gpt4 book ai didi

Meteor - 如何从 URL 参数获取服务器数据?

转载 作者:行者123 更新时间:2023-12-01 17:27:24 26 4
gpt4 key购买 nike

我正在尝试根据 MeteorJS 中路径上的 URL 参数返回不同的数据。

从 Nodejs 背景来看,我会这样做:

testPage = function (req, res, next) {
//Got parameter query from url
console.log('Getting at /testPage/:query '+req.params.query);

//do something with that parameter, say make an HTTP call or query database
var newThing = req.params.query+"hi";

// render the page
var data = {
foo: newThing
};
res.render('testPage', data);
};

Meteor 不支持服务器端渲染,所以这是不可能的。我仍然沉浸在 Meteor 的单页客户端渲染中;我应该如何在 Meteor 中解决这个问题?

我的第一次尝试(使用 IronRouter):

Router.route('/testPage/:query', function () {
console.log("Got param at /testPage/:query "+this.params.query);
if(Meteor.isServer){
console.log("This code may never be called?");
//Otherwise, make an HTTP call
// and then somehow pass the data back to the client...
}
this.render("query");
});

这是我可以用 react 变量做的事情吗?或者也许从客户端向单独的服务器端点进行 AJAX 调用?

最佳答案

iron-router 的规范模式是使用路由参数订阅数据:

Router.route('/foo/:bar',{ // Route takes a single parameter
name: 'foo',
waitOn: function(){
return Meteor.subscribe('fooPublication', this.params.bar);
}
});

在此示例中,this.params.bar 是路由的唯一参数。它作为参数传递给 Meteor.subscribe。服务器可以使用该参数来决定将哪些内容发布回客户端。 waitOn 确保模板呈现时数据在客户端可用。

关于Meteor - 如何从 URL 参数获取服务器数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35587044/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com