我想打开www.website.com/slim/username
的个人资料页面(其中username
是唯一的)。
我目前正在使用slim php
框架来路由GET
个请求。因此,当我打开www.website.com/profile/username
时,它会正确执行为/username
定义的路由并提供简单的json响应
{"users":[{"id":"01","firstname":"kamron","lastname":"shaw","gender":"male","status":"Offline"}]}
从这一点开始,我想将此数据与个人资料页面模板集成,因此我在www.website.com/profile.php
创建了一个个人资料页面模板,然后使用ajax
向GET
发出www.website.com/slim/username
个请求
www.website.com/slim/username
并接收数据并使用模板显示。
问题是,如果用户直接导航到JSON
,他只会看到原始JSON
响应。
我希望用户在直接从浏览器发出GET
请求时看到SequenceEqual
响应模板。
我怎样才能做到这一点?如果我在任何地方都错了,请纠正我,并告诉我一个合适的方法。
答案 0 :(得分:0)
使用
$isXHR = $app->request->isAjax();
要么
$isXHR = $app->request->isXhr();
检查请求是否是ajax。如果不是ajax而不是重定向到你想要的页面(如果登录则可能是个人资料,如果没有登录则可能是登录页面)
if($isXHR){
echo 'json';
}else{
render view
}