php - Javascript/jQuery 检查 PHP 输出是否为 json - 如何?

标签 php javascript jquery json

我有一个脚本,可以在需要时输出 JSON。 PHP 将 header 设置为 JSON,并且 JSON 对对象进行编码..

在 JS 端,$.getJSON 收到了它,一切都很顺利。

问题是当我的 PHP 输出纯文本时(这是我必须处理的情况)。

更大的问题是,尽管我很想编写代码来检查 PHP 端的输出类型,但 getJSON 不会触发回调函数,除非它收到 JSON 类型的输出.

因此,如果我的 PHP 脚本输出错误代码(未编码到 JSON 例程中),JS 将不会使用react..

我需要 JS 根据 PHP 的输出类型以某种方式使用react。

我尝试执行 .get.post JS 函数,但同样,当我的 PHP 输出 JSON 时,这些回调不会被触发/触发。

最佳答案

你看过 .done() 和 .fail() 吗?

$.ajax({
    url: 'blah.php',
    data: blah,
    type: 'POST',
    dataType: 'json'
}).done(function(){
    console.log('OK');
}).fail(function(jqXHR, textStatus, errorThrown){
    console.log(textStatus+"\n"+ errorThrown);
});

...另外,这里有一些用于验证 JSON 的 JS 代码...

// validate JSON
function is_JSON(str) {
    try {
        var c = $.parseJSON(str);
    } catch (e) {
        return false;
    }
    return true;
}

关于php - Javascript/jQuery 检查 PHP 输出是否为 json - 如何?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14330673/

相关文章:

php - Laravel 文件权限错误

php - 如何在 PHP 5.6 中通过 php.ini 设置 'verify_peer_name=false' SSL 上下文选项

javascript - 如何将我的过滤器搜索输入文本与我的正则表达式相匹配?

javascript - 使用 JavaScript 流式传输 soundcloud 轨道不起作用

javascript - Bootstrap 开关句柄宽度问题

jquery - 如何找到紧随错误跨度的 jquery 元素

php - 这个基于异或的加密函数安全吗?

php - 如何处理大型 php mysql $_POST UPDATE/INSERT

javascript - 加载本地json文件并将结果分配给变量

javascript - 如何创建一个在单击之前具有滚动背景图像的 HTML 文本字段?