我可以将URL重定向到另一个页面中由Ajax填充的特定内容吗?

时间:2017-08-25 22:38:58

标签: javascript html ajax

首先,感谢任何试图突破这个问题的人......我已经缝了12针。

这就是我所拥有的:

  1. mysite.com/documentation - 包含菜单div和内容div的文档页面(单击菜单div中的项目时,内容div将由Ajax填充)。

  2. mysite.com/documentation/subject-1-content - 文档页面中菜单项的实际内容页面。这将由Ajax填充到div中。

  3. 我的问题是,如果有人直接访问 mysite.com/documentation/subject-1-content ,他们会看到实际内容,而不是文档页面,而这些内容填充在div中。

    是否有可能将URL重定向到不同的URL +以激活调用第一个URL内容的Ajax而不是创建无限循环的重定向?

    提前谢谢。

2 个答案:

答案 0 :(得分:0)

如果我理解正确,如果不通过ajax调用访问该页面,则需要进行重定向。

Ajax调用传递一个名为HTTP_X_REQUESTED_WITH的头。我假设您使用PHP作为服务器端,因此检测标头和重定向的代码(如果它是空的(直接调用该页面))将是:

if(empty($_SERVER['HTTP_X_REQUESTED_WITH']) {
    header("Location: mysite.com/documentation");
die;
}
//rest of your code

答案 1 :(得分:0)

如果您需要在客户端进行此操作,可以将内容页面 mysite.com/documentation/subject-1-content 自动重定向到文档页面,可能带有查询参数或hash,文档页面可以读取该参数并加载所需的ajax内容