Wenn der Fehler „Undefinierte Eigenschaft: $client' auftritt, versuchen Sie, Informationen abzurufen.
P粉329425839
P粉329425839 2023-08-26 23:10:36
0
2
420
<p>Ich verwende Laravel v5.8 und guzzlehttp v7.4 und versuche, diesen Controller zu schreiben, um einige Informationen zu erhalten: </p> <pre class="brush:php;toolbar:false;">öffentliche Funktion __construct() { $client = new Client(['base_uri' => 'https://jsonplaceholder.typicode.com/']); } öffentliche Funktion getInfo(Request $request) { versuchen { $response = $this->client->request('GET', 'posts'); dd($response->getContents()); } Catch (ClientException $e) { dd($e); } }</pre> <p>Aber wenn ich die Methode <code>getInfo</code> aufrufe, erhalte ich die folgende Fehlermeldung: </p> <p><strong>Undefinierte Eigenschaft: AppHttpControllersTavanmandAppResultController::$client</strong></p> <p>In der Dokumentation heißt es jedoch, die URI so aufzurufen. </p> <p>Was ist hier also das Problem? Wie kann ich dieses Problem lösen? </p>
P粉329425839
P粉329425839

Antworte allen(2)
P粉842215006

$client作为此类的全局变量。

然后在构造函数中设置值:

public $client
    public function __construct()
    {
        $this->client = new Client(['base_uri' => 'https://jsonplaceholder.typicode.com/']);
    }

愉快的编码...

P粉621033928

你的$client变量的作用范围仅限于构造函数内部。如果你想在其他地方访问它,你需要将它赋值给某种类属性;

private $client;
    
public function __construct()
{
    $this->client = new Client(['base_uri' => 'https://jsonplaceholder.typicode.com/']);
}

public function getInfo(Request $request)
{
    try {
        $response = $this->client->request('GET', 'posts');
    //...
}
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage