Domanda

Sto cercando di creare un'app di SharePoint che ottiene e usa i dati JSON generati su un altro sito Web / applicazione Web attraverso una richiesta AJAX. Diciamo che i dati JSON che voglio ottenere dall'altro sito web è un elenco di alcune marche di laptop.

L'App / Ambiente SharePoint è su un altro server rispetto al sito Web con i marchi laptop e il sito Web del laptop non è correlato a SharePoint in alcun modo. Supponiamo quanto segue:

var laptopUrl = "https://examplewebsite.com/laptopbrands"; // returns a json list with laptop brands
var sharepointWebsite = 'https://totallydifferentwebsite.com/sharepoint';
.

Quando la navigazione sul laptopologo nel browser emettone i dati JSON, ma quando si utilizza il codice nell'app di SharePoint non viene restituito dati. Ho provato a utilizzare il seguente codice (e diverse altre richieste JQuery Ajax):

$.getJSON( laptopUrl, function( data ) {
    console.log(data); // Empty
});
.

Ho provato diversi modi per ottenere i dati JSON nell'app SharePoint ma senza successo ... Ho visto un esempio di yahoo weather app che ha praticamente quello che volevo, ma quando ho cambiato l'URL nella mia output JSON , il risultato era vuoto ...

Sto facendo qualcosa di sbagliato o è quello che sto cercando di ottenere semplicemente non è possibile?

Grazie in anticipo,

ilians

È stato utile?

Soluzione

Looks like you need JSONP in this scenario:

JSONP or "JSON with padding" is a communication technique used in JavaScript programs which run in Web browsers. It provides a method to request data from a server in a different domain, something prohibited by typical web browsers because of the same origin policy.

JSONP could be triggered using:

$.getJSON(laptopUrl + "?callback=?", null, function(data) 
{
    console.log(data); 
});

The addition of '?callback=?' will trigger a jsonp request.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top