问题标签 [prerender]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
667 浏览

html - 我们如何查看预渲染资源或预取资源是否在 Firefox、Safari 和 IE10 上实际预渲染或预取?

假设我们有上面的代码。https://www.apple.com/在 Chrome 上预渲染。如果我们打开 Chrome 的任务管理器,我们可以看到这一点。这很不错。

我怎么知道https://www.apple.com/是否真的在 Firefox 上预取?Firefox 是否为此提供了解决方案?

我如何知道https://www.apple.com/是否在 Safari 和 IE10 上实际预取或预渲染?这两个浏览器是否为此提供了解决方案?

谢谢!

顺便提一句。Safari和IE10选择哪种方式?预渲染还是预取?

0 投票
1 回答
1388 浏览

asp.net - asp.net 标题标签未从页面加载时的变量中填充

我已经声明了变量并从我的 asp 中的下拉列表中填充。但是,在页面加载时,标签不会填充,它们只会在我更改下拉列表中的值时才会填充。因此变量与标签一起使用,而不是最初在页面加载时。

我的标签的 asp 是:

编辑答案

我按照以下建议创建了以下 PreRender。然后我包含 OnPreRender="Page_PreRender"在其中一个标签元素中,这似乎触发了预渲染。

编辑 - DDL 绑定

0 投票
1 回答
1336 浏览

c# - 从 UserControl 页面,在父页面调用 Page_Prerender

我有一个名为 MakeRedemption.aspx 的 aspx 页面,其中有一个 UserControl (Search.ascx)。

MakeRedemption.aspx 中有 Page_Prerender()。

我想问一下,如何通过 Search.ascx 中的函数从 MakeRedemption.aspx 调用 Page_Prerender()。

如下所示:

实际上,我的用户控制页面中的一项功能存在循环。

Page_Prerender (MakeRedemption.aspx) 将在所有循环完成后触发。

我想要的是:每次在循环的每个项目结束之前,我都会触发 MakeRedemption.aspx 上的 Page_Prerender 来做一些事情。
就像是 :

这意味着,这个 for 循环有 i = 10,因此,我想在 for 循环内触发 Page_Prerender 10 次。

我在 aspx 文件中的 PreRender 函数如下:

不确定此 Page_PreRender() 是否被视为自动生成 OnPreRender()。

我想触发这个 Page_PreRender() 而不是 OnPreRender() 。

抱歉,如果我问的是一个愚蠢的问题,我是编程和 c# 的新手。

好心提醒。

谢谢。

0 投票
1 回答
1024 浏览

ajax - jsf ajax viewcope重新加载整个页面

当我执行 ajax 调用时:

它再次执行所有@prerender 命令,并且似乎重新加载了整个页面。我认为ajax只会重新加载我告诉它重新加载的部分?

还是总是执行预渲染?在创建视图时,我是否需要除 prerender 之外的其他东西来仅获取一次 GET 变量?

问候

0 投票
1 回答
177 浏览

html - HTML5 prerender/prefetch 不工作(我得到一个渐进式的窗帘式下载/过渡!)

我正在开发一个网络项目,我想加载我的网页以实现均匀过渡。我现在得到的是我的照片和背景以类似窗帘的方式下载。我希望它在全部立即加载时显示出来。

我不介意是否有进度条或其他东西,但不介意类似窗帘的方式。

我使用了 prefetch/prerender html 5 标签但没有成功.. 访问这里: http ://hellenic-jewls.com/ 然后尝试将鼠标悬停到另一个网页,以查看我的图像像窗帘一样逐渐下载:例如http ://hellenic-jewls.com/classical/ 当然 ,当网页被缓存时就可以了。

0 投票
1 回答
1533 浏览

javascript - Backbone.js 路由:从 hash 到 hashbang

我有一个旧的backbone.js 应用程序,我目前正在对其进行改造,以便搜索引擎可以正确抓取。我已经决定使用 prerender.io 的 Node.js + Phantom.js 系统来为搜索引擎提供我的 javascript 网站的静态 HTML 渲染。然而,使用 prerender.io 的要求之一是将所有哈希 URL 转换为 hashbang(因此 site.com/#gallery 应该是 site.come/#!gallery)。我的网站目前仅使用哈希进行 url 路由。如何将其切换为 hashbang?

0 投票
1 回答
441 浏览

angularjs - Hashbang、prereder.io 和机器人

我对搜索机器人将如何抓取我的 ajax 网站感到有些困惑。

http://www.example.com包含 3 个链接

  • #!/abc
  • #!/xyz
  • #!/123

我的<meta name="fragment" content="!">页面头部包含了这个,所以机器人应该使用下面的 url 访问这些链接,我正在使用 prerender.io 来提供一个页面

机器人在抓取这些页面时会如何表现?当他们在这些页面上找到新链接时,网址会是什么样子?

  1. #!/abc1 => http://www.example.com?_escaped_fragment_=/abc#!/abc1
  2. #!/abc2 => http://www.example.com/#!/abc/abc2
0 投票
1 回答
2790 浏览

facebook - 用于单页 angularjs 网站的 Nginx 配置以与 Facebook Open Graph 的 prerender.io 一起使用

我有一个单页 angularjs 网络应用程序。我正在尝试使其能够被搜索引擎抓取。为了实现这一点,我使用了 prerender.io,这是一个带有 phantomjs 浏览器的 nodejs 网络服务器来呈现 ajax 页面。

我的 nginx 配置基于以下要点:https ://gist.github.com/Stanback/6998085

这在大多数情况下都有效。我可以卷曲我的应用程序并获得正确的响应:curl -o test.html domain.com/?_escaped_fragment=/path

请求被重定向到 prerender.io 代理,并且代理使用以下 url 发出单个请求:domain.com/#!/path

所有其他请求(js、img、css 和 xhr)都照常通过 nginx。在等待以下 JS 变量设置为 true 后,Phantomjs 渲染代理请求没有问题:window.prerenderReady = false;

这一切都很棒...... Google 可以抓取我的网站!输入脸书

我正在设置一些 OG 元标记,以便我可以使用 Facebook like 按钮 (iFrame)。为每个页面设置以下元标记:

这些元标记由 angularjs 为每个资产正确更新,并且 phantomyjs 代理在返回响应之前正确等待它们更新。

但是,当我http://domain.com/#!/asset使用 Facebook URL linter 测试 URL 时,我遇到了一些问题。

  1. Facebook 声称规范 URL 和 og:url 不同,但是当我单击“查看我们的抓取工具为您的 URL 看到的确切内容”时,它们是相同的
  2. 当我单击“查看我们的抓取工具为您的 URL 看到的确切内容”时,canonical 和 og:url 已替换为domain.com/?fb_locale=en_GB#!/asset
  3. 代理收到 3 个请求。资产的第一个似乎遵循规范和 og:url
  4. 当用户单击喜欢此页面 iFrame 时,返回到我的网站的链接看起来像domain.com/?_escaped_fragment_=/asset

第 4 个问题是破坏交易的问题。如果用户喜欢我帖子上的某个页面,它将进入他们的 Facebook 活动流。如果该用户然后在他们的流中单击返回到我的站点的链接,它将引导他们通过代理并通过 phantomjs 呈现页面!

我猜我不应该通过 Facebook 与 hash-bang 分享链接。我想我应该分享一个链接并将规范 / og:url 设置为domain.com/static/asset. 应该更新 nginx 配置以捕获/staticurl,如果useragent = Facebook参数包含_escaped_fragment_然后直接到代理,否则将用户重定向到#!/asset

我已经厌倦了所有我能想到的让修改后的 nginx 配置来处理它,但它打败了我。当我拦截这些/staticurl 并随机重写到代理图像时,通过代理请求 css 和 js 资产,并且 phantomjs 崩溃。

有人可以帮我修改这个nginx 配置,以便我可以将网络爬虫请求转发到代理,允许 facebook 从我的网站上刮下正确的 og 标签,并在用户在 Facebook 上分享我的内容时指定正确的链接返回 url?

0 投票
1 回答
19283 浏览

telerik - 在预渲染时隐藏/显示 Telerik RadGrid 列

我试图在预渲染事件中隐藏/显示嵌套telerik rad网格上的不同列,基于一个标志,但无论我将可见或显示属性设置为什么,它们都显示

这些是我的网格列:

这是隐藏列的代码:

即使我将显示设置为 false,所有这些列也会显示,列上的 QuickWatch 将给出我期望的显示值(即 true 或 false),但是当页面加载时,它们都显示在网格中。

有什么想法吗?

0 投票
1 回答
3113 浏览

node.js - Prerender.io 不缓存页面

我用 AngularJS 制作了一个带有 expressJS 后端的应用程序。现在我想让它可以抓取,我找到了prerender.io。由于某种原因,我认为我已经完成了所有正确的 bur,我在 prerenderer 仪表板中看不到任何统计信息。

在我的 app.configure 函数中,我包含了如下令牌:

在我的 HTML 中,我包含了元片段标签:

我做的最后一件事是告诉 AngularJS 使用哈希前缀:

但是由于某种原因,如果我参考文档,我不会得到正确的结果。下面你可以看到它应该做什么:

Google 向您的服务器发送请求,如下所示:

http://www.example.com/?_escaped_fragment_=/user/123

你把 url 变回这个:

http://www.example.com/#!/user/123

出于某种原因,如果我尝试这样做,它仍然会添加 #! 标志添加 URL 的末尾,所以如果我请求我的应用程序的 URL,如谷歌,我会得到:

http://www.my-website.com/?_escaped_fragment_=#!/home

所以它不会替换 url 中的哈希值。我认为这是我的问题的原因。

提前致谢!

编辑 - 例如,如果我添加一条额外的路线,那么它可以工作:

路线'/'不起作用'/test'路线确实起作用。