Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Mengakses Badan Respons dalam Guzzle HTTP v6 untuk Mendapatkan Token API?

Bagaimanakah Saya Mengakses Badan Respons dalam Guzzle HTTP v6 untuk Mendapatkan Token API?

Mary-Kate Olsen
Lepaskan: 2024-12-02 03:17:13
asal
678 orang telah melayarinya

How Do I Access the Response Body in Guzzle HTTP v6 to Retrieve API Tokens?

Cara Guzzle HTTP Membenarkan Mengakses Badan Respons dalam Versi 6

Mendapatkan semula Token API dengan PHP

Anda bertujuan untuk buat pembungkus untuk API syarikat anda. Untuk mengesahkan dengan API, anda perlu mengekstrak token daripada badan tindak balas permintaan POST. Menggunakan perpustakaan Guzzle yang popular, anda menghadapi kesukaran mengakses token dalam objek respons Guzzle.

Pelaksanaan Guzzle PSR-7

Guzzle mematuhi PSR-7 standard, yang menggunakan pembungkus strim untuk badan tindak balas. Pembalut strim ini, dilaksanakan menggunakan strim temp PHP, menyimpan data badan tindak balas.

Mengakses Badan Respons

Untuk mendapatkan badan respons penuh, anda boleh menggunakan penghantaran rentetan PHP operator:

$contents = (string) $response->getBody();
Salin selepas log masuk

Sebagai alternatif, kaedah getContents() strim boleh used:

$contents = $response->getBody()->getContents();
Salin selepas log masuk

Perbezaan utama antara pendekatan ini terletak pada gelagat getContents(), yang hanya mengembalikan kandungan yang tinggal selepas panggilan pertama. Panggilan berikutnya akan mengembalikan rentetan kosong melainkan kedudukan strim dilaraskan menggunakan rewind() atau seek().

Contoh Kod

 'http://companysub.dev.myapi.com/']);
$response = $client->post('api/v1/auth/', [
    'form_params' => [
        'username' => $user,
        'password' => $password
    ]
]);

// Convert response body to string and decode JSON
$contents = (string) $response->getBody();
$data = json_decode($contents, true);

// Extract token
$token = $data['data']['token'];
Salin selepas log masuk

Setelah token diperoleh , anda boleh terus menggunakannya untuk pengesahan API.

Atas ialah kandungan terperinci Bagaimanakah Saya Mengakses Badan Respons dalam Guzzle HTTP v6 untuk Mendapatkan Token API?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan