gpt4 book ai didi

javascript - 如果 json_encode 返回已经是 JSON 的 api 数据会发生什么

转载 作者:行者123 更新时间:2023-12-02 23:24:06 25 4
gpt4 key购买 nike

我已经有一段时间没有使用 JSON/PHP/AJAX 了,我很难访问返回的数据。

我有一个 AJAX 函数,它调用一个 PHP 脚本,该脚本执行 API 调用,并在 $data 中返回 JSON。该 JSON 通过 $newJSON = json_decode($data); 进行解码,并循环创建一些存储在 $cleanHTML 中的格式化 HTML。然后,我将变量 $cleanHTML 和原始 $data 变量放入新数组 $processedReturnArray = array($cleanHTML, $data); 并对它进行编码 echo json_encode($processedReturnArray); 以传回 AJAX 脚本。

我的问题:我假设对包含 JSON 字符串的数组进行 JSON 编码不是正确的方法。最好的解决方案是什么?

这是我的 JS,你会看到我在哪里 console.log 和我看到的第一个元素 $cleanHTML 但当我尝试记录第二个对象的值时我收到以下错误:Uncaught TypeError:无法读取未定义的属性“结果”

    jQuery(document).ready( function($) {    
$("#searchFormSubmit").click(function() {
event.preventDefault();
console.log("In First Part of Search Submit!");
var address = $('#address').val();
$.ajax({
url : the_ajax_script.ajaxurl,
type : 'post',
data : {
action : 'travel_app_ajaxdata',
thangs : $('#CoreSearchForm').serialize()
},
success : function( response ) {
returnData = JSON.parse(response);
console.log("This is my Clean HTML" + returnData[0]);
console.log("This is my Location" + returnData[1]);
console.log("TEST DATA - EVENT: " + returnData[1]["resultsPage"]);
$('.return_data').html(returnData[0]);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert("Status: " + textStatus); alert("Error: " + errorThrown);
}
});
});

});

PHP 脚本由多个类组成,如果有助于解决问题,我可以发布一些内容。我还可以发布返回的 JSON 示例。

最佳答案

尝试一下,在处理请求的 php 代码中将 header 设置为 application/json。喜欢

header('Content-Type:application/json');
return json_encode($processedReturnArray);

关于javascript - 如果 json_encode 返回已经是 JSON 的 api 数据会发生什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56815576/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com