Sharepoint Apps sind die Zukunft. Nur leider ist die Zukunft in diesem Fall schlecht und oft auch fehlerhaft dokumentiert. Die einfachsten Implementierungen können so schnell viel Zeit kosten, weil Fehler an der falschen Stelle gesucht werden, geht man doch nicht davon aus, dass die Dokumentation in diversen Büchern und auf guten Developerseiten einfach falsch ist.
Ein gutes Beispiel dafür sind Rest-Services, die schnell und damit hervorragend zur App-Entwicklung eingesetzt werden können. Zu Beachten dabei ist, dass die Verwendung von “ajax” zum Aufruf selbiger nicht funktioniert. Warum? Weil jede App in ihrer eigenen Domäne läuft und deshalb jeder Zugriff Cross-Domain ist. Damit bleibt der “/_layouts/15/SP.RequestExecutor.js” als einzige Möglichkeit übrig, diesen Zugriff durchzuführen.
Die notwendige Url dafür gestaltet sich noch einmal so schwierig, denn bei vielen Anleitungen wird das notwendig setzen des “Targets” gar nicht erwähnt. Eine mögliche Url wäre:
appweburl + „/_api/SP.AppContextSite(@target)/web/getfolderbyserverrelativeurl(‚“ + listname + „‚)/files?@target='“ + hostweburl + „‚&$top=“ + 10+ „&$skip=“ + 10;
Und aufpassen, nicht vertippen, denn Compiler-Checks für einen String gibt es natürlich nicht.
Für viele andere Cross-Domain Aufrufe findet sich leider nicht so leicht ein möglicher Weg. Somit ist wieder einmal die Kreativität des Entwicklers gefragt, um solche Dinge zu umschiffen.
Happy Coding!
Source: New feed