मैं लैंगवेल 5.4 का उपयोग डिंगो एपीआई के साथ कर रहा हूं, और मैं आंतरिक डिंगो अनुरोधों के साथ काम करने के लिए लैरवेल के ओथ 2.0 (पासपोर्ट) को प्राप्त करने की कोशिश कर रहा हूं। पहले, मैं जेडब्ल्यूटी का उपयोग कर रहा था, लेकिन अब मैं ओथ का उपयोग करना चाहता हूं। यह मेरा पिछला प्रेषक कोड है जो एक आंतरिक अनुरोध पर प्रमाणीकरण करने के लिए आवश्यक टोकन के साथ गुजरता है।लैरवेल 5.4 ओएथ डिंगो आंतरिक अनुरोधों के साथ
public function getDispatcher()
{
$token = JWTAuth::fromUser(Auth::user());
return $this->api->header('Authorization','Bearer'.$token)->be(Auth::user());
}
अब जब कि मैं प्रमाणित करने के लिए OAuth का उपयोग कर रहा हूँ, मेरे जावा स्क्रिप्ट कोड जावास्क्रिप्ट, जो पूरी तरह से काम करता है में passing a cookie using this method द्वारा बस प्रमाणीकरण प्राप्त करने के लिए प्रबंधन करता है।
अब मुझे डिंगो के भीतर "आंतरिक अनुरोध" पर ओथ टोकन प्राप्त करने के लिए getDispatcher()
विधि को संशोधित करने की आवश्यकता है। क्या किसी को यह करने के बारे में कोई सुझाव है? सिद्धांत रूप में मैं प्रत्येक उपयोगकर्ता के लिए व्यक्तिगत पहुंच टोकन बना सकता हूं लेकिन यह केवल एक आंतरिक अनुरोध के लिए ओवरकिल जैसा लगता है। किसी भी सलाह या दृष्टिकोण की सराहना की। मैं पूरे OAuth प्रवाह के बिना OAuth टोकन कैसे प्राप्त कर सकता हूं, या वैकल्पिक रूप से, मैं आंतरिक अनुरोधों के लिए प्रमाणीकरण कैसे बंद कर सकता हूं।
अद्यतन नीचे उत्तर के आधार पर:
मार्ग (बस डिंगो) और आंतरिक अनुरोध काम करता है पर अपने आप ही 'api.auth'। auth: api (पासपोर्ट) + api.auth और मुझे जेएसओएन के रूप में वापस आने वाले आंतरिक अनुरोधों पर विधि की अनुमति नहीं है। {"संदेश": "405 विधि अनुमत नहीं है"} अब एक आंतरिक POST अनुरोध को कॉल करने का प्रयास करते समय। (ऐसा लगता है कि इन मार्गों पर पोस्ट करने का प्रयास करते समय लॉगिन पेज पर 301 रीडायरेक्ट होता है, और बदले में एपीआई पथ किसी भी तरह से GET में बदल जाता है जिससे 405 त्रुटि फेंकती है)।
प्रतिकूल क्षमता में पोस्टमैन कार्य के माध्यम से एपीआई अनुरोध। उपयोगकर्ता सक्रिय नहीं हो सकता है (['middleware' => ['auth: api', 'api.auth']) जब (auth: api just passport) सक्रिय यह ठीक काम करता है।
देखें कि यह https://esbenp.github.io/2017/03/19/modern-rest-api-laravel-part-4/ में मदद करता है या नहीं? –