为什么 PHP Ajax 显示 HTML 而不是纯文本?

时间:2021-05-21 20:10:27

标签: javascript php html jquery ajax

最近我将我的服务器从 Cloudflare 更改为 Ezoic CDN。在 Cloudflare,一切都按预期进行。但在 Ezoic,这就是正在发生的事情。

这是我的 Ajax 请求文件。

<p id="abc"></p>
<script src="https://code.jquery.com/jquery-3.5.1.min.js" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
<script>
$.post('demo.php',(data)=>{
    console.log(data);
    if(data=="null")
    {
     console.log("No data");
     return;
    }
    
    $("#abc").append(data);
})
</script>

这里是 demo.php

<?php
// database queries.
if($no_row==0)
{
echo "null";
exit();
}
echo $row_data;
?>

但是这里不是纯文本 ajax 返回的是像 <html><head></head><body>null</body></html> 这样的数据 即使存在数据,也包含额外的 HTML(head, body) 包装器。这很奇怪,因为它以前没有发生过。

当我添加 header("Content-Type: text/plain") 时,一切都像以前一样。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

尝试在 ajax 调用中使用:

dataType : "text",
contentType: "application/json",
相关问题