在我使用的主根目录的main.php文件中:
$isWebView = false;
if((strpos($_SERVER['HTTP_USER_AGENT'], 'Mobile/') !== false) && (strpos($_SERVER['HTTP_USER_AGENT'], 'Safari/') == false)) :
$isWebView = true;
elseif(isset($_SERVER['HTTP_X_REQUESTED_WITH'])) :
$isWebView = true;
endif;
echo json_encode($isWebView);
检查是webview还是浏览器,我将结果保存为$ isWebView变量中的布尔值。
现在我正尝试将结果加载到如下所示的scripts文件夹中的main.js文件中,但它不起作用,为什么?我得到的错误数据未定义。
$.ajax({
url: 'main.php',
type: 'POST',
dataType: 'json',
data: data,
success: function(data){
console.log(data);
}
});
答案 0 :(得分:0)
在ajax请求调用中定义数据值
$.ajax({
url: 'main.php',
type: 'POST',
dataType: 'json',
data: {},
success: function(result){
try{
JSON.parse(result);
console.log(result.isWebView)
} catch (err) {
console.log("non json respone");
}
}
});
在php内
$response = [];
$response['isWebView'] = false;
if ( (strpos($_SERVER['HTTP_USER_AGENT'], 'Mobile/') !== false) && (strpos($_SERVER['HTTP_USER_AGENT'], 'Safari/') == false) ) {
$response['isWebView'] = true;
} elseif( isset($_SERVER['HTTP_X_REQUESTED_WITH']) ) {
$response['isWebView'] = true;
}
echo json_encode($response);