php TypeError DOMDocument::loadXML():参数#1($source)必须是string,array类型

rkkpypqq  于 2023-05-05  发布在  PHP
关注(0)|答案(1)|浏览(85)

我是laravel的新手,这是我登录应用程序后立即得到的错误。https://flareapp.io/share/J7orgBGP#F47
尝试开发一个移动的充值应用程序。我非常需要帮助来绕过这个错误
尝试编辑curl文件,但错误更多

fhg3lkii

fhg3lkii1#

从堆栈跟踪中可以看出,您对http://127.0.0.1:8000/dashboard的请求成功进入了DashboardController::index()方法。到目前为止一切顺利。
但是在为视图准备数据时,特别是User::getBalance()导致错误。
在getBalance()方法中,你有:

Curl::Make()->GET->url($this['reloadly_api_url']."/accounts/balance")->header([
            "Content-Type:application/json",
            "Authorization: Bearer ".Setting::get('reloadly_api_token')
        ])->execute();

execute()调用期间,它错过了以下部分:

if (Helper::isJson($response)) {
    $response =  json_decode($response, true, 512, JSON_THROW_ON_ERROR);
}

如果他们的Helper::isJson($response)没有问题,那么问题应该出在您的[reloadly_api_url]/accounts/balance的响应上
注意:它必须是json编码的string,以便可以由json_decode()解码
从您的错误消息来看,响应是array,而不是string
您需要将响应从[reloadly_api_url]/accounts/balance修改为字符串。
我猜你可以用json_encode() Package [reloadly_api_url]/accounts/balance的返回

相关问题