मैं सर्वर पर POST अनुरोध करने के लिए PHP में Guzzle (v6.1.1) का उपयोग कर रहा हूं। यह बढ़िया काम करता है। मैं जो लॉग और प्राप्त किया गया था उसे लॉग करने के लिए कुछ लॉगिंग फ़ंक्शंस जोड़ रहा हूं और मैं यह नहीं समझ सकता कि गजल सर्वर पर भेजे गए डेटा को कैसे प्राप्त करें। मैं प्रतिक्रिया ठीक कर सकता हूं, लेकिन मुझे पर डेटा कैसे भेजा जा सकता है? (जो JSON स्ट्रिंग होगा।)मैं Guzzle PHP के साथ SENT डेटा का बॉडी कैसे प्राप्त करूं?
यहाँ मेरी कोड के संबंधित भाग है:
$client = new GuzzleHttp\Client(['base_uri' => $serviceUrlPayments ]);
try {
$response = $client->request('POST', 'Charge', [
'auth' => [$securenetId, $secureKey],
'json' => [ "amount" => $amount,
"paymentVaultToken" => array(
"customerId" => $customerId,
"paymentMethodId" => $token,
"publicKey" => $publicKey
),
"extendedInformation" => array(
"typeOfGoods" => $typeOfGoods,
"userDefinedFields" => $udfs,
"notes" => $Notes
),
'developerApplication'=> $developerApplication
]
]);
} catch (ServerErrorResponseException $e) {
echo (string) $e->getResponse()->getBody();
}
echo $response->getBody(); // THIS CORRECTLY SHOWS THE SERVER RESPONSE
echo $client->getBody(); // This doesn't work
echo $client->request->getBody(); // nor does this
किसी भी मदद की सराहना की जाएगी। मैंने GetBody() के समान फ़ंक्शन के लिए Guzzle Sourcecode में देखने का प्रयास किया जो अनुरोध के साथ काम करेगा, लेकिन मैं एक PHP विशेषज्ञ नहीं हूं इसलिए मैं कुछ भी उपयोगी नहीं हुआ। मैंने Google को बहुत कुछ खोजा लेकिन केवल सर्वर से प्रतिक्रिया प्राप्त करने के बारे में बात करने वाले लोगों को मिला, जिनके साथ मुझे कोई परेशानी नहीं है।
इनमें से दोनों कुछ गलत होने का कारण बनते हैं और मुझे सर्वर से 404 मिलते हैं। – ruhnet
मैंने अभी कोशिश की है (guzzle 6.1), और यह मेरे लिए काम करता है। क्या आप अपना पूरा कोड पोस्ट कर सकते हैं? – Federkun
मैंने वैरिएबल असाइनमेंट को छोड़कर वास्तविक कोड दिखाने के लिए अपना प्रश्न संपादित किया है और ऐसे प्रासंगिक नहीं हैं। मैंने आपके कोड से पहले अपने सभी मिडलवेयर कोड को जोड़कर और क्लाइंट ऑब्जेक्ट सृजन कमांड में 'हैंडलर' => $ स्टैक 'जोड़कर आपके द्वारा पोस्ट की गई कोशिश की। – ruhnet