निश्चित रूप से, किसी भी PHP परियोजना के लिए, आप अनुरोध भेजने के लिए GuzzleHTTP का उपयोग करना चाह सकते हैं। Guzzle के पास बहुत अच्छे दस्तावेज हैं जिन्हें आप यहाँ देख सकते हैं । मैं सिर्फ इतना कहना चाहता हूं कि, आप शायद अपने लावेले प्रोजेक्ट के किसी भी घटक में उदाहरण के लिए गज़ल के ग्राहक वर्ग के उपयोग को केंद्रीकृत करना चाहते हैं (उदाहरण के लिए एक विशेषता) लारवेल के कई नियंत्रकों और घटकों पर ग्राहक उदाहरण बनाने के बजाय (कई लेखों के रूप में) और जवाब दें सुझाव)।
मैंने एक विशेषता बनाई जिसे आप उपयोग करने का प्रयास कर सकते हैं, जो आपको अपने लारवेल परियोजना के किसी भी घटक से अनुरोध भेजने की अनुमति देता है, बस इसका उपयोग करके और कॉल करने के लिए makeRequest
।
namespace App\Traits;
use GuzzleHttp\Client;
trait ConsumesExternalServices
{
/**
* Send a request to any service
* @return string
*/
public function makeRequest($method, $requestUrl, $queryParams = [], $formParams = [], $headers = [], $hasFile = false)
{
$client = new Client([
'base_uri' => $this->baseUri,
]);
$bodyType = 'form_params';
if ($hasFile) {
$bodyType = 'multipart';
$multipart = [];
foreach ($formParams as $name => $contents) {
$multipart[] = [
'name' => $name,
'contents' => $contents
];
}
}
$response = $client->request($method, $requestUrl, [
'query' => $queryParams,
$bodyType => $hasFile ? $multipart : $formParams,
'headers' => $headers,
]);
$response = $response->getBody()->getContents();
return $response;
}
}
ध्यान दें कि यह विशेषता भेजने वाली फाइलों को संभाल सकती है।
यदि आप इस विशेषता के बारे में अधिक विवरण और कुछ अन्य सामान इस विशेषता को लारवेल में एकीकृत करना चाहते हैं, तो इस लेख को देखें । इसके अतिरिक्त, यदि इस विषय में रुचि है या बड़ी सहायता की आवश्यकता है, तो आप मेरा पाठ्यक्रम ले सकते हैं जो आपको पूरी प्रक्रिया में मार्गदर्शन करता है।
मुझे आशा है कि यह आप सभी की मदद करेगा।
शुभकामनाएँ :)