Ich versuche über Jquery und REST Interface auf eine Sharepoint-Liste zuzugreifen. Auf der Website mit dem folgenden Code wird localhost ausgeführt.
Dieser Code funktioniert nicht:
%Vor%Ich erhalte die Fehlermeldung "Origin Ссылка ist nicht von" Access-Control-Allow-Origin "zulässig.
Ich bin nicht sicher, was der Grund ist. Ist es die Tatsache, dass Sharepoint Authentifizierung benötigt (anonym ist blockiert) oder ist es der domänenübergreifende Aufruf? Oder sogar beide?
Was kann ich tun? Ich habe irgendwo über JSONP als Datentyp gelesen. Aber das hat nicht funktioniert. Danke.
Wenn Sie davon ausgehen, dass beide Ressourcen unternehmensintern sind und Sie immer auf die anderen zugreifen, könnte Ihr Sharepoint-Administrator versuchen, auf den Sharepoint IIS-Servern sogenannte CORS-Header (Cross Origin Resource Sharing) zu aktivieren / p>
Damit können Ihre Cross-Origin-Anrufe erfolgreich abgeschlossen werden, da der Browser und die Server Header austauschen, die eine gemeinsame Ursprungsfreigabe anfordern. Sie können mehr über CORS in Ссылка
erfahrenIn Bezug auf 3nigmas Antwort. Jquery's crossDomain-Flag funktioniert nicht, da die Sharepoint-Dienste nicht als JSONP -Dienste konzipiert sind, was Jquery versucht verwenden Sie, wenn Sie diese Flagge setzen. (Der Sharepoint-Server müsste die Daten so auffüllen, als wäre es eine Javascript-Datei mit einem einzigen JSON-Objekt darin, aber ich weiß nicht, wie ich das konfigurieren könnte.)
Sie müssen stattdessen Ihren eigenen Server aufrufen und dann Ihren Server den SharePoint Server aufrufen lassen. Angenommen, Sie verwenden eine mittlere C # -Zeile, würde dies etwa so aussehen:
%Vor%Natürlich müssen Sie Code für die Ausgabe der json zurück an Ihren Client hinzufügen, aber der Code oben ist, wie Sie die SP Daten erhalten können, die Sie brauchen.
Danke,
Matt
Nur für den Fall, dass jemand anderes dieses Problem anwendet, funktioniert das in meiner Umgebung, indem ich jquery, suoport.cors auf true setze. Der Code lautet:
%Vor%Damit kann ich auf eine Liste auf einem anderen physischen Server zugreifen. Es waren keine Änderungen an iis erforderlich. Kein JSONP benötigt.
Tags und Links javascript jquery rest sharepoint