Hallo,
ich hätte mal eine Frage zu Custom Service Providern in Laravel - vielleicht liest ja zufällig ein Kundiger diese Zeilen..
Momentan schreibe ich eine App mit Laravel, welche sich mit der Rest Api von Redmine verbindet. Genauer gesagt: Mit einer firmeneigenen Redmine Instanz, welche für einen Zugriff auf die Rest Schnittstelle Basic Auth erwartet, d.h. username/password oder einen
Api Key. (username/password wurden seinerzeit für etliche Mitarbeiter angelegt und in der Instanz gespeichert)
Mein Laravel backend funktioniert demnach nach dem proxy pattern - frontend wählt eine Route, die im backend für den http request an Redmine sorgt.
Vorerst muss allerdings beim initialen Request, wenn der Client seine Redmine credentials im Frontend-Login eingibt (custom login, nicht das von Laravel bereitgestellte), die Validität der eingegeben Zugangsdaten geprüft werden.
Kurz gesagt: Kommt was zurück von Redmine, sind die credentials valide, so dass ich in der Session Username u. Passwort speichern und für jeden Folge-Request nutzen kann (bis sich der User ausloggt und die Session zerstört wird)
So weit funktioniert das zwar, aaaber:
Meine Herangehensweise ist sehr unorthodox und ich würde sogar sagen - konzeptionell grundlegend falsch.
Im Grunde decode ich die json-response nur, und leite das assoziative Array an die blade view weiter, ohne es (wie ich es eigentlich auch von PDO von früher kenne bzw. wie es eloquent/docrine auch handhaben) in ein Objekt zu überführen..
Meine Überlegung ist jetzt Folgende: Um meinen Code etwas zu verbessern, könnte ich über die response iterieren und quasi manuell Objekte erzeugen.
Oder ich nutze einfach eine Zusatzbibliothek dafür: Nennt sich "kbsali" und ist ein Redmine client.
Meine Fragen:
1. Wie bindet man so einen Client in Laravels Service Container ein, wenn dieser Client für seine Instanziierung besagte Zugangsdaten benötigt?
2. Wäre es damit getan, diesen Client einzubinden oder ist er letztlich nur eine Vereinfachung der Http Requests und das Umwandeln in Objekte müsste ich dennoch machen?
ich hätte mal eine Frage zu Custom Service Providern in Laravel - vielleicht liest ja zufällig ein Kundiger diese Zeilen..
Momentan schreibe ich eine App mit Laravel, welche sich mit der Rest Api von Redmine verbindet. Genauer gesagt: Mit einer firmeneigenen Redmine Instanz, welche für einen Zugriff auf die Rest Schnittstelle Basic Auth erwartet, d.h. username/password oder einen
Api Key. (username/password wurden seinerzeit für etliche Mitarbeiter angelegt und in der Instanz gespeichert)
Mein Laravel backend funktioniert demnach nach dem proxy pattern - frontend wählt eine Route, die im backend für den http request an Redmine sorgt.
Vorerst muss allerdings beim initialen Request, wenn der Client seine Redmine credentials im Frontend-Login eingibt (custom login, nicht das von Laravel bereitgestellte), die Validität der eingegeben Zugangsdaten geprüft werden.
Kurz gesagt: Kommt was zurück von Redmine, sind die credentials valide, so dass ich in der Session Username u. Passwort speichern und für jeden Folge-Request nutzen kann (bis sich der User ausloggt und die Session zerstört wird)
So weit funktioniert das zwar, aaaber:
Meine Herangehensweise ist sehr unorthodox und ich würde sogar sagen - konzeptionell grundlegend falsch.
Im Grunde decode ich die json-response nur, und leite das assoziative Array an die blade view weiter, ohne es (wie ich es eigentlich auch von PDO von früher kenne bzw. wie es eloquent/docrine auch handhaben) in ein Objekt zu überführen..
Meine Überlegung ist jetzt Folgende: Um meinen Code etwas zu verbessern, könnte ich über die response iterieren und quasi manuell Objekte erzeugen.
Oder ich nutze einfach eine Zusatzbibliothek dafür: Nennt sich "kbsali" und ist ein Redmine client.
Meine Fragen:
1. Wie bindet man so einen Client in Laravels Service Container ein, wenn dieser Client für seine Instanziierung besagte Zugangsdaten benötigt?
2. Wäre es damit getan, diesen Client einzubinden oder ist er letztlich nur eine Vereinfachung der Http Requests und das Umwandeln in Objekte müsste ich dennoch machen?
Kommentar