PrerenderIO无法在我的MeteorApp上工作
PrerenderIO not working on my MeteorApp
我在应用程序上使用PrerenderIO时遇到问题。我正在运行meteor@1.3.5.1
和prerender-node
,我已经在我的server/prerenderio.js
中设置了这个代码,就像这个一样
Meteor.startup( function(){
const prerenderio = Npm.require('prerender-node');
const settings = Meteor.settings.PrerenderIO;
console.log(settings);
if (settings && settings.token && settings.host) {
console.log('This is true');
prerenderio.set('prerenderToken', settings.token);
prerenderio.set('host', settings.host);
prerenderio.set('protocol', 'http');
WebApp.rawConnectHandlers.use(prerenderio);
}
});
我的settings.json
liiks喜欢这个
{
"PrerenderIO": {
"token": "wi7DqaiBlaBlaBlaqTGmT",
"host": "http://locallhost:3000/"
},
"public":{
"ga": {
"id": "UA-XXXXXXXXX-1"
}
}
}
当我在本地主机上启动服务器时,我会在日志上得到这个
Prerender Token: wi7DqaiBlaBlaBlaqTGmT
因此,我让PrerenderIO的本地服务器在port:3033
上运行,当我运行http://localhost:3000/?_escaped_fragment_=
时,它需要很长时间,然后返回"localhost not found",并在我的流星服务器日志中记录一些错误。
此外,当我将应用程序部署到我的主机上,并访问我的prerender.io面板时,我仍然会看到警告,说我没有安装我的preender令牌。
当我访问http://localhost:3033/http://localhost:3000
时,我得到了没有图像的缓存页面
请注意我试过以下包dfischer:prerenderio
和dferber:prerender
,但都是一样的。
在服务器的某个地方,您需要导入Meteor来获取您的私人设置,您需要从节点模块导入prerenderIO,从Meteor/WebApp导入WebApp。为预呈现程序设置您的配置文件,如下所示:
import prerenderIO from 'prerender-node';
import { Meteor } from 'meteor/meteor';
import { WebApp } from 'meteor/webapp';
Meteor.startup(() => {
const settings = Meteor.settings.private.PrerenderIO;
if (settings && settings.token && settings.host) {
prerenderIO.set('prerenderToken', settings.token);
prerenderIO.set('host', settings.host);
prerenderIO.set('protocol', 'http');
WebApp.rawConnectHandlers.use(prerenderIO);
}
});
此外,在您的设置中,您不需要在域字符串中包含http,因为您是通过调用协议方法在服务器中设置http的。您的主机url应该只是:localhost:3000
相关文章:
- Javascript:selenium Web驱动程序isDisplayed()不工作
- jQuery UI自动完成突然停止工作
- AngularJS UI路由器不能像ng路由器那样工作
- HTML5音频加载和播放获胜'我不能在iPad上工作
- JavaScript打印功能使日历停止工作
- Javascript.getHours()工作不正常
- 为什么这在IE中的工作方式与在Firefox中不同
- 视频HTML没有'无法在Internet Explorer 11上工作
- 扩展移相器按钮类不工作
- Firebase迁移-简单的Firebase.set没有'不再工作了——旧的还是新的
- 谷歌地图不是以HTML显示,而是在JS Fiddle上工作
- 正在尝试使用if和else添加类,但无法正常工作
- Jquery FadeIn FadeOut 只工作一次
- Foreach无法在Typescript中工作
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- 为什么不是't窗口.恢复正常工作吗?(javascript/jquery)
- JS可以在Chrome中工作,但不能在Firefox中工作
- ajaxToolkit PopupControlExtender不工作.过时的
- HTML标记在脚本标记中工作
- PrerenderIO无法在我的MeteorApp上工作