SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Liste einer Projekt-Seite auslesen, von einer Portal-Seite

Geprüfte Antwort Dieser Beitrag hat 2 Antworten

Ohne Rang
17 Beiträge
Pyro erstellt 11 Mai 2016 15:56
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo,

mit dem unten stehenden Javascript-Code kann ich erfolgreich eine Liste auslesen. Der Code wird ausgeführt, während ich mich auf einer Unterwebsite befinde. Die Liste die ausgelesen wird, befindet sich auf einer anderen Unterwebsite.

Solange es sich bei beiden Seiten um eine Portal-Seite, oder bei beiden um eine Projekt-Seite handelt, funktioniert das ganze Problemlos. Doch sobald ich den Kommentar in Zeile 3 und 5 entferne und dafür Zeile 2 und 4 auskommentiere funktioniert es nicht mehr, ich habe auch auf beiden Seiten Vollzugriff.
Ich bekomme dann folgende Fehlermeldung:

Request failed. Unerwartete Antwortdaten vom Server.
null

Die Listen ID und die URL sind auf jeden Fall richtig, wenn hier etwas falsches eingetragen wird, wird auch eine andere Fehlermeldung ausgegeben.
Ich glaube das Problem ist, dass der Code auf einer Portal-Seite ausgeführt wird, während die Liste sich auf einer Projekt-Seite befindet.
Kann das sein? Und lässt sich die Liste dennoch auslesen

 

Code:
function ListeLesen() {
    var clientContext = new SP.ClientContext("http://portal.name.de/sites/...");  
    //var clientContext = new SP.ClientContext("http://projects.name.de/sites/...");  
    var oList = clientContext.get_web().get_lists().getById("ID_Liste_Portal");     
    //var oList = clientContext.get_web().get_lists().getById("ID_Liste_Projekt"); 
    var camlQuery = new SP.CamlQuery();
    camlQuery.set_viewXml('<View><Query></Query></View>');
    this.collListItem = oList.getItems(camlQuery);
    clientContext.load(collListItem, 'Include(Title)');
    clientContext.executeQueryAsync(Function.createDelegate(this, this.onQuerySucceeded), Function.createDelegate(this, this.onQueryFailed));
}

function onQuerySucceeded() {
    alert("Liste lesen erfolgreich");
}

function onQueryFailed(sender, args) {
    alert('Request failed. ' + args.get_message() + '\n' + args.get_stackTrace());
}

 

Gruß
André

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 11 Mai 2016 16:12
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Befinden sich die beiden Websites wirklich in verschiedenen Domänen (portal.name.de und projects.name.de)? Dann ist das cross-site-scripting und wird vom Browser unterbunden. Das hat einen sehr guten Grund, sonst könnte jede Website per JavaScript Daten an obskure Adressen senden.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
17 Beiträge
Pyro Als Antwort am 12 Mai 2016 07:54
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ok danke.