# AngularJS Auth

**URL:** <https://forum.shopware.com/t/angularjs-auth/38712>\
**Category:** Programmierung\
**Created:** [2. August 2016 um 11:09 UTC](https://forum.shopware.com/t/angularjs-auth/38712 "2016-08-02T11:09:27Z")\
**Posts on this page:** 16\
**Page:** 1

<div class="post-metadata">

**Author:** ![sjaeger](https://avatars.discourse-cdn.com/v4/letter/s/a88e4f/32.png) [@sjaeger](https://forum.shopware.com/u/sjaeger)\
**Post date:** [2. August 2016 um 11:09 UTC](https://forum.shopware.com/t/angularjs-auth/38712/1 "2016-08-02T11:09:27Z")

</div>

Hallo,

ich baue gerade eine AngularJS Statistic App, die auf unterschiedlichen Shopware systemen die statistiken abrufen soll.

Ich hänge seit drei tagen an der authentifizierung über username/accesstoken. statt dass die&nbsp;über den header mitgegebene auth verarbeitet wird, poppt bei mir immer eine basic auth loginmaske auf.

weiss irgendwer wie ich mich über den header mit username/token authentifizieren kann?

aktueller status:

```
var username = "test";
var password = "asdfasdf";
var encodedString = username + ':' + password;
$http({
   method: 'GET',
   url: url,
   header: {
      Authorization: 'Basic ' + encodedString
   }
})
.success(function (response, status) {
   deferred.resolve(response, status);
})
.error(function(response, status, headers, configs) {
   deferred.reject(response, status, headers, config);
});

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![brettvormkopp](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/brettvormkopp/32/7788_2.png) [@brettvormkopp](https://forum.shopware.com/u/brettvormkopp)\
**Post date:** [2. August 2016 um 11:19 UTC](https://forum.shopware.com/t/angularjs-auth/38712/2 "2016-08-02T11:19:50Z")

</div>

Gehört hinter "Basic " kein Leerzeichen bevor der String kommt?&nbsp;Wäre diese Lösung zu einfach, dann lade dir mal Postman herunter. Da kannst du die funktionsfähigkeit generell erstmal testen.

Gruss

---

<div class="post-metadata">

**Author:** ![sjaeger](https://avatars.discourse-cdn.com/v4/letter/s/a88e4f/32.png) [@sjaeger](https://forum.shopware.com/u/sjaeger)\
**Post date:** [2. August 2016 um 12:05 UTC](https://forum.shopware.com/t/angularjs-auth/38712/3 "2016-08-02T12:05:32Z")

</div>

tatsächlich richtig, hab das leerzeichen hinzugefügt.

&nbsp;

auch mit postman, bekomme ich trotz header eingabe kein result.

&nbsp;

rufe ich alles über den browser auf, geht alles wunderbar

---

<div class="post-metadata">

**Author:** ![brettvormkopp](https://dub1.discourse-cdn.com/flex013/user_avatar/forum.shopware.com/brettvormkopp/32/7788_2.png) [@brettvormkopp](https://forum.shopware.com/u/brettvormkopp)\
**Post date:** [2. August 2016 um 19:49 UTC](https://forum.shopware.com/t/angularjs-auth/38712/4 "2016-08-02T19:49:28Z")

</div>

Greifst du auf die Standard Api zurück?

---

<div class="post-metadata">

**Author:** ![sjaeger](https://avatars.discourse-cdn.com/v4/letter/s/a88e4f/32.png) [@sjaeger](https://forum.shopware.com/u/sjaeger)\
**Post date:** [3. August 2016 um 05:05 UTC](https://forum.shopware.com/t/angularjs-auth/38712/5 "2016-08-03T05:05:57Z")

</div>

ja ich probiere es

---

<div class="post-metadata">

**Author:** ![sjaeger](https://avatars.discourse-cdn.com/v4/letter/s/a88e4f/32.png) [@sjaeger](https://forum.shopware.com/u/sjaeger)\
**Post date:** [15. August 2016 um 05:41 UTC](https://forum.shopware.com/t/angularjs-auth/38712/6 "2016-08-15T05:41:31Z")

</div>

Hat sonst noch jemand eine idee?

---

<div class="post-metadata">

**Author:** ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)\
**Post date:** [15. August 2016 um 08:26 UTC](https://forum.shopware.com/t/angularjs-auth/38712/7 "2016-08-15T08:26:06Z")

</div>

Ehm … willst du das komplette Backend über JS bzw. Angular machen oder wie?

Die Shopware API bietet auch keinen Endpunkt für die Statistiken wie Umsatz & Co. Das müsste man sich alles zusammen basteln über den Order Endpoint usw.

Ich mache es zwar nicht mit Angular, aber mit Vue. Sind ein wenig ähnlich.

Ich habe ein kleines Facade&nbsp;Package für Laravel geschrieben und verwende das Shopware SDK:&nbsp;[GitHub - LeadCommerceDE/shopware-sdk: A PHP SDK for the Shopware 5 REST API](https://github.com/LeadCommerceDE/shopware-sdk)

Vue authentifiziert sich dann über Token in meinen Backend. Das Backend holt sich die Daten entsprechend aus der Shopware API und&nbsp;spuckt entsprechend die Daten aus. Die eigenen API Endpoints kann man natürlich für alles möglich verwenden, ob nun Vue oder Angular.

---

<div class="post-metadata">

**Author:** ![sjaeger](https://avatars.discourse-cdn.com/v4/letter/s/a88e4f/32.png) [@sjaeger](https://forum.shopware.com/u/sjaeger)\
**Post date:** [15. August 2016 um 08:38 UTC](https://forum.shopware.com/t/angularjs-auth/38712/8 "2016-08-15T08:38:41Z")

</div>

hi,

nein ich will statistiken herausbekommen. dazu brauche ich dann auch benutzer berechtigungen, welche statistiken der user der sich bei mir im angular anmeldet sehen darf.

das was du mit vue gemacht hast, wäre dann das was ich mit shopware machen möchte 😃

wie sieht dein header aus, den deine applikation an shopware&nbsp;mitgeschickt? hast du was an der htaccess umgeschrieben?

&nbsp;

&nbsp;

---

<div class="post-metadata">

**Author:** ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)\
**Post date:** [15. August 2016 um 09:19 UTC](https://forum.shopware.com/t/angularjs-auth/38712/9 "2016-08-15T09:19:52Z")

</div>

Wie genau willst du die denn bekommen die Statistiken?

Angular ist ja auch ein Frontend Werkzeug, kein Backend. Das Backend musst du dir ja noch bauen wie bspw bei mir mit Laravel. Oder mit irgendeinen anderen Framework, oder etwas selbst gebastelten.

Die Shopware API bietet lediglich die Endpunkte, dass du entsprechende Daten abrufen kannst.&nbsp;

Du hast ja einmal:

- Die Shopware API
- Dein Angular / Vue / React / was auch immer Frontend
- Dein Backend welches die Daten der Shopware API verarbeitet und bereit stellt, nach deinen Wünschen.

Wenn du bspw. die Umsatz Statistken abrufen wollen würdest, dann müsstest du dir nen Connector bauen, der direkt auf die Datenbank zugreift, ohne die Shopware API Endpoints - Denn diese bieten keinen Endpunkt für die Statistiken.

Den Header, damit Vue mit dem Backend kommunizieren kann,&nbsp;übernimmt bei mir Laravel mit einem Token. Ansonsten kannst du auch bspw. auch auf das &nbsp;JWT Tokens Package setzen:&nbsp;[GitHub - tymondesigns/jwt-auth: 🔐 JSON Web Token Authentication for Laravel & Lumen](https://github.com/tymondesigns/jwt-auth) setzen.

---

<div class="post-metadata">

**Author:** ![sjaeger](https://avatars.discourse-cdn.com/v4/letter/s/a88e4f/32.png) [@sjaeger](https://forum.shopware.com/u/sjaeger)\
**Post date:** [15. August 2016 um 09:35 UTC](https://forum.shopware.com/t/angularjs-auth/38712/10 "2016-08-15T09:35:31Z")

</div>

Hi,

danke erstmal für deine Anregungen, die helfen mir gerade sehr.

Ich habe für die Statistiken ein eigenes Plugin geschrieben, dieses führt die benötigten sql abfragen etc. aus.

Eigentlich wollte ich über „[www.shopname1.de/api/pluginname](http://www.shopname1.de/api/pluginname)“ meine json results ausliefern lassen.  
aktuell läuft es jedoch unter „[www.shopname1.de/pluginname](http://www.shopname1.de/pluginname)“ und ist ungeschützt. (ist aber ein devel server)

unter [www.shopname1.de/angularjs](http://www.shopname1.de/angularjs) rendere ich das angularjs heraus.  
Hier jedoch („api/“) stoße ich auf die Schwierigkeit, dass ich mich mit angularjs nicht einloggen kann.&nbsp;  
desweiteren kann ich dem user ja nicht zutrauen, dass er den ewig langen token bei sich auf dem ipad einträgt. hier wollte ich die möglichkeit schaffen, einen normalen backend user zugriff zu realisieren.  
jwt auth werde ich jetzt doch mal ausprobieren, hatte das schon mehrmals gelesen.

&nbsp;

---

<div class="post-metadata">

**Author:** ![TeichDatensysteme](https://avatars.discourse-cdn.com/v4/letter/t/43a26b/32.png) [@TeichDatensysteme](https://forum.shopware.com/u/TeichDatensysteme)\
**Post date:** [17. August 2016 um 11:40 UTC](https://forum.shopware.com/t/angularjs-auth/38712/11 "2016-08-17T11:40:48Z")

</div>

Wo wir bei Angular sind, wenn jemand eine Auth. per Angular2 per http in Verbindung mit der Shopware API mit der Digest Auth. hinbekommt, hätte ich großes Interesse! Habe da nämlich nichts hinbekommen …

Schöne Grüße,  
Niklas

---

<div class="post-metadata">

**Author:** ![sjaeger](https://avatars.discourse-cdn.com/v4/letter/s/a88e4f/32.png) [@sjaeger](https://forum.shopware.com/u/sjaeger)\
**Post date:** [17. August 2016 um 11:41 UTC](https://forum.shopware.com/t/angularjs-auth/38712/12 "2016-08-17T11:41:57Z")

</div>

kurze frage, warum verwendest du schon angular 2?

---

<div class="post-metadata">

**Author:** ![TeichDatensysteme](https://avatars.discourse-cdn.com/v4/letter/t/43a26b/32.png) [@TeichDatensysteme](https://forum.shopware.com/u/TeichDatensysteme)\
**Post date:** [17. August 2016 um 12:14 UTC](https://forum.shopware.com/t/angularjs-auth/38712/13 "2016-08-17T12:14:44Z")

</div>

Wieso mit einer alten Version anfangen? ;)&nbsp;Du startest doch jetzt auch nicht mit Shopware 4, oder? 😉

Angular 2 ist so weit und hat so viele Vorteile im Vergleich zu 1.x,&nbsp;da sehe ich es nicht ein, mit dem alten Stand anzufangen, gerade da man nicht einfach migrieren kann.  
Alleine (!) Typescript ist so ein großer Mehrwert imho 🙂

Schöne Grüße,  
Niklas

---

<div class="post-metadata">

**Author:** ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)\
**Post date:** [17. August 2016 um 12:27 UTC](https://forum.shopware.com/t/angularjs-auth/38712/14 "2016-08-17T12:27:51Z")

</div>

Vue.js 2 ftw 😛

---

<div class="post-metadata">

**Author:** ![sjaeger](https://avatars.discourse-cdn.com/v4/letter/s/a88e4f/32.png) [@sjaeger](https://forum.shopware.com/u/sjaeger)\
**Post date:** [17. August 2016 um 12:29 UTC](https://forum.shopware.com/t/angularjs-auth/38712/15 "2016-08-17T12:29:39Z")

</div>

hat alles seine vor und nachteile 😉

ich bleib bei angular 😛

---

<div class="post-metadata">

**Author:** ![Shopwareianer](https://avatars.discourse-cdn.com/v4/letter/s/b4bc9f/32.png) [@Shopwareianer](https://forum.shopware.com/u/Shopwareianer)\
**Post date:** [17. August 2016 um 17:50 UTC](https://forum.shopware.com/t/angularjs-auth/38712/16 "2016-08-17T17:50:15Z")

</div>

Quatsch, Vue 2 hat keine Nachteile&nbsp; ![Wearing-Sunglasses](https://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/wearing-sunglasses.png "Wearing-Sunglasses")&nbsp; ![Grin](https://forum.shopware.com/plugins/CKEditor/plugins/smiley/images/grin.png "Grin")
