当前位置: 首页 > 面试题库 >

如何判断页面是通过Ajax调用还是单独调用

万承志
2023-03-14
问题内容

我有一个页面可以通过Ajax加载其他页面(请考虑使用框架,除非没有框架)。

显然,这些页面都可以独立调用,因此我想检测是否通过Ajax调用了它们,如果不是,则重定向到主Ajax页面。

这些页面是php页面,因此我也可以访问它。

指数:

    goto = "StandalonePrograms.php";
    var clear = "<br style='clear:both;'>"
    if(goto != ''){
        $.ajax({
            url: goto,
            context: document.body,
            success: function(data){
                $('#mainwindow').html(data + clear);
                $('#mainwindow').find("script").each(function(i){
                    eval($(this).text());
                });
            }
        });
    }

问题答案:

使用该XMLHttpRequest对象进行请求时,现代浏览器会添加以下请求标头:

X-Requested-With: XMLHttpRequest

在PHP中,使用以下命令检查此标头的存在:

$_SERVER['HTTP_X_REQUESTED_WITH']


 类似资料:
  • 需求背景 A B C 三个页面 A => C ,通过 router.push 进入。 B => C ,通过 router.repace 进入。 需求: 在 C 页面需要判断是 replace 还是 push 来进行特殊的操作。 问题: vue-router 是否有这样的方式呢?

  • 本文向大家介绍如何判断是函数还是方法?相关面试题,主要包含被问及如何判断是函数还是方法?时的应答技巧和注意事项,需要的朋友参考一下 看他的调用者是谁,如果是类,就需要传入一个参数self的值,这时他就是一个函数, 如果调用者是对象,就不需要给self传入参数值,这时他就是一个方法 print(isinstance(obj.func, FunctionType)) # False print(isi

  • 问题内容: 如何检测是否使用SH:或JS:调用了Node.JS文件? 问题答案: if (require.main === module) { console.log(‘called directly’); } else { console.log(‘required as a module’); } 请在此处查看有关此文档的文档:https : //nodejs.org/docs/latest/

  • 本文向大家介绍使用JS判断页面是首次被加载还是刷新,包括了使用JS判断页面是首次被加载还是刷新的使用技巧和注意事项,需要的朋友参考一下 1 利用window.name属性在页面刷新时不会重置判断(在该属性空置的情况下可使用) 2 使用sessionStorage或cookie来判断 与window.name实现方法类似在首次加载时设置一个固定值 之后判断即可 这里以sessionStorage来为

  • 我有一个应用程序,我希望能够使用从远程查询获得连接状态报告。 问题是,当我连接WiFi时,data enabled总是返回为true,只有当我不连接WiFi时,我才能正确地查询移动网络。 我看到的所有答案都建议轮询看看当前的连接是什么,但我想知道如果我需要移动网络是否可用,即使我目前可能通过WiFi连接。 是否有告诉移动网络数据是否启用,而不轮询看是否连接? mob_avail返回为'true',

  • 问题内容: 假设我有一连串的net / http处理程序,而早期的处理程序以HTTP错误(例如)响应。如何在以下处理程序中检测到此情况,并避免将其他数据发送到客户端? 还是这完全是解决问题的错误方法? 问题答案: 是一个接口。因此,只需编写一个新实例: 在您的处理程序中: 编辑: 另一件事要考虑。在大多数情况下,如果您具有处理程序的“链”,则意味着在处理程序内部调用处理程序。所以如果你有类似的东西