Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript SEO:如何索引客户端api请求中的数据_Javascript_Angular_Typescript_Seo_Angular Universal - Fatal编程技术网

Javascript SEO:如何索引客户端api请求中的数据

Javascript SEO:如何索引客户端api请求中的数据,javascript,angular,typescript,seo,angular-universal,Javascript,Angular,Typescript,Seo,Angular Universal,我不是在寻找一个关于如何设置它的具体教程。我其实想知道什么是可能的,什么是不可能的 在Angular 6应用程序中,我正在学习如何加载content Server端,以便机器人程序可以索引客户端数据。有很多来自api请求的数据,我也想对它们进行爬网。例如,下面的代码从我的电子商务API获取当前页面项目数据 在我的角分量中 是否可以索引来自API的数据? 从API返回的数据可以被SEO机器人编入索引吗?如果您使用服务器端预渲染并将数据注入html,我相信它可以。这里有一个使用.Net Core执行

我不是在寻找一个关于如何设置它的具体教程。我其实想知道什么是可能的,什么是不可能的

在Angular 6应用程序中,我正在学习如何加载content Server端,以便机器人程序可以索引客户端数据。有很多来自api请求的数据,我也想对它们进行爬网。例如,下面的代码从我的电子商务API获取当前页面项目数据

在我的角分量中 是否可以索引来自API的数据?
从API返回的数据可以被SEO机器人编入索引吗?

如果您使用服务器端预渲染并将数据注入html,我相信它可以。这里有一个使用.Net Core执行此操作的示例:

此答案分为两部分:

  • 谷歌机器人
  • facebook、instagram和其他社交媒体机器人
对于谷歌机器人您无需使用angular做任何额外的操作,即可让谷歌机器人呈现所有页面数据。您可以阅读这些链接,了解谷歌机器人如何呈现SPA。约翰·穆勒(John Mueller)创建了这个项目,以帮助开发者解决他们在处理SPA时对google机器人的功能和工作方式的疑问

简言之,如果你的网站管理员以谷歌的方式获取信息工作正常,那么你就不必担心谷歌机器人为页面编制索引了。您所需要的只是创建正确的站点地图,并正确生成标题元标记

对于像facebook crawler这样的社交媒体机器人,您需要加入angular universal,以便您的页面在共享上有适当的预览。要实现社交共享,您必须使用它从后端获取数据。
例如 routing.module.ts应该具有在初始化组件之前从后端获取数据的决心

        path: 'content/:id',
        component: contentDetailComponent,
        resolve: {
          content: DetailResolve
        }

youtube上的快速搜索提供了很多关于SEO和Angular的帖子。这是一个很好的开始:我看了整件事。非常感谢。我的主要问题仍然是。“是否可以索引来自API的数据”所以你想索引原始数据?来自API的数据是我的用户在google搜索的内容。如果我问错了,那么也请告诉我。如果你使用angular universal呈现你的页面,正如下面的答案所示,那么谷歌将能够正确地为你的网站编制索引。只需添加一个站点地图,以确保您的所有页面都是可发现的。要想知道这是否可行,似乎唯一的办法就是尝试一下,但到时候就太晚了。我真的在找人说这件事可以做,也不能做
getProductById = (req, res, next) => {
    let product_id = req.query.product_id;
    return bc_v3.get(`/catalog/products/${product_id}`).then(data => {
        return data; // this data will then return back to the client async
    });
};
        path: 'content/:id',
        component: contentDetailComponent,
        resolve: {
          content: DetailResolve
        }