Php 在get中添加application/json头返回错误500?

Php 在get中添加application/json头返回错误500?,php,flutter,codeigniter-4,Php,Flutter,Codeigniter 4,我有一个API服务器开发的codeigniter 4和颤振应用程序连接到它。我尝试使用http.get时遇到问题。当我在标题中添加application/json时,它返回错误500。但如果我将其更改为application/x-www-form-urlencoded,它就会工作。另外,当我删除整个headers参数时,它也可以工作。这是默认行为吗 下面是颤振中的示例客户机代码: dynamic get(String path, {Map<dynamic, dynamic> pa

我有一个API服务器开发的codeigniter 4和颤振应用程序连接到它。我尝试使用http.get时遇到问题。当我在标题中添加application/json时,它返回错误500。但如果我将其更改为
application/x-www-form-urlencoded
,它就会工作。另外,当我删除整个headers参数时,它也可以工作。这是默认行为吗

下面是颤振中的示例客户机代码:

  dynamic get(String path, {Map<dynamic, dynamic> params}) async {
    print(getPath(path, params));
    final response = await _client.get(
      getPath(path, params),
      headers: {
        'Content-Type': 'application/json',
      },
    );
编辑: 下面是我得到的错误:

TypeError Object
(
[message:protected] => Argument 2 passed to dot_array_search() must be of the type array, null given, called in C:\xampp\htdocs\api.test\vendor\codeigniter4\framework\system\HTTP\IncomingRequest.php on line 360 

'Content-Type':'application/json'
在标题中时,参数似乎变为null。

500错误是一条通用错误消息,几乎涵盖了PHP脚本可能出现的每一个错误。检查您的服务器错误日志以找出确切的错误消息。@aynber我尝试在整个getTest函数中添加
try catch
,但它从未返回错误。还尝试在函数的第一行添加
print\r('test')
,但它甚至没有调用。但当我从颤振请求中删除
Content-Type':“application/json
时,一切都正常了。@aynber很抱歉,我编辑了错误的脚本。将用错误更新问题。
TypeError Object
(
[message:protected] => Argument 2 passed to dot_array_search() must be of the type array, null given, called in C:\xampp\htdocs\api.test\vendor\codeigniter4\framework\system\HTTP\IncomingRequest.php on line 360