php - Laravel AJAX Post 数组在服务器上变为空
问题描述
我的 AJAX Post 中有两个数组。一个始终有效,另一个在服务器上变为空。在他们被发送之前,他们看起来和我一模一样,这就是为什么我非常困惑为什么它不起作用。
数组 A,始终有效console.log()
:
0: "content_description_back_button"
1: "search_city_no_results"
数组 B,变为空console.log()
:
search_city_no_results_x: "No results. Please change your search query"
content_description_back_button_xxx: "back"
邮政编码:
$.ajax({
url : '/home/update_xml',
type : "post",
data : {'new_keys': array_B, 'deactivate_keys': array_A},
success : function(response) {
console.log("update_xml", response);
},
error : function(xhr) {
console.log("update_xml", xhr);
}
});
服务器\Log::info($data->new_keys);
:
只是一个空字符串,什么都没有。
服务器\Log::info($data->deactivate_keys);
:
array (
0 => 'content_description_back_button',
1 => 'search_city_no_results',
)
到目前为止我做了什么:
我已经为 AJAX 帖子尝试了大量不同的语法组合。
例子:
contentType: 'application/json;charset=UTF-8',
dataType: "json",
data : JSON.stringify({'new_keys': array_B, 'deactivate_keys': array_A})
我试过contentType
->ContentType
我尝试了不同的组合,但结果总是一样的。阵列 A 始终有效。服务器上的数组 B 为空。
在console.log()
他们看起来都和我一样。他们都像一个阵列一样受到威胁。
解决方案
array_B 必须被威胁为 JS 中的字典。
在填充它之前,它看起来像这样:
array_b=[];
但它必须看起来像这样:
array_b={};
非常简单的修复。我保持开放的问题。也许有人会有类似的问题。
推荐阅读
- javascript - 我无法访问另一个文件中的函数
- c# - 通过 VPN 连接访问公司专用网络上的远程网站
- react-native - React Native 从堆栈导航器中隐藏顶部导航
- mysql - 如何将表与行值的条件连接起来?
- python - 跳过 NaN 值以获取距离
- fullcalendar - 其他显示器上的全日历刷新
- php - Codeigniter PostgreSQL 通过 CLI 运行不工作
- swift - UISegmentedControl iOS 13 SelectedTint 默认颜色
- salesforce - 文件格式和扩展名不匹配
- php - 如何使用平面 json 结果数组创建 PHP 自定义嵌套 json 数组