javascript - 在客户端(Angular JS)应用程序中渲染刮刀的元标记

标签 javascript facebook node.js angularjs client-side

我有一个 AngularJS Web 应用程序,当然它基本上完全在客户端运行。 我需要为 FaceBook 抓取工具添加 html meta 标记,这当然需要从服务器呈现,而不是从任何客户端 java 脚本呈现。

到目前为止,我已经使用两个不同的地址完成了此操作:

因此,如果有人浏览 mysite.com/products/1234 他将获得 FaceBook 元标记和重定向到 mysite.com/products2/1234, 这是客户端应用程序。

当然,这并不漂亮,而且当人们将链接复制粘贴到 FB 屏幕上时 - 它不会找到任何元数据。

我的应用程序是AngularJS,服务器是NodeJS

是整个应用程序页面进行服务器端渲染的唯一方法吗?

我真的很想将客户端和服务器端逻辑和代码分开。

谢谢

最佳答案

我还不熟悉node.js(还:)),但我很确定您可以检查请求是否是XMLHttpRequest。如果是,则发送回 ajax 调用的数据,如果不是,则渲染整个页面。

关于javascript - 在客户端(Angular JS)应用程序中渲染刮刀的元标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16331569/

相关文章:

javascript - 我将如何声明一个带有 "+"或 "-"符号的变量? Javascript

javascript - 在附加到对象属性的 javascript 函数中使用 'this'

javascript - SAPUI5 按下按钮打开链接

android - Facebook 安卓登录

javascript - page.open() 函数对于某些 URL 无法正常工作

javascript - 如何禁用客户端点击链接按钮或图像按钮

ios - 用户在 iOS 中发布到 FB 后,试图关闭显示 SLComposeViewController 的 View Controller

facebook - 禁用 Google+ 社交登录的自动身份验证

node.js - "inherit"和 "process pipe child"之间的区别

node.js - RxJS + node.js HTTP 服务器实现?