Ho un file "Test.ini" nel mio server, contenere il seguente testo:
"[ALL_OFF]
[ALL_ON]
"
Sto cercando di ottenere questo il contenuto del file tramite $http
servizio, qui è parte della mia funzione:
var params = { url: 'test.ini'};
$http(params).then(
function (APIResponse)
{
deferred.resolve(APIResponse.data);
},
function (APIResponse)
{
deferred.reject(APIResponse);
});
Questa operazione ha ottenuto un'eccezione angolare (SyntaxError: imprevisto token di A).
ho aperto il file quadro angolare, e ho trovato l'exeption:
Poiché il contenuto di file di testo iniziano con "[" e finisce con "]", angolare "pensare" che è un file JSON.
Ecco il codice angolare (linea 7474 in 1.2.23 versione):
var defaults = this.defaults = {
// transform incoming response data
transformResponse: [function(data) {
if (isString(data)) {
// strip json vulnerability protection prefix
data = data.replace(PROTECTION_PREFIX, '');
if (JSON_START.test(data) && JSON_END.test(data))
data = fromJson(data);
}
return data;
}],
La mia domanda:
Come posso forza angolare non rendono questo controllo (if (JSON_START.test(data) && JSON_END.test(data))
) e non analizzare la risposta del testo a JSON?
Rendi il tuo server in grado di restituire il file con 'text/plain', quindi funzionerà bene – maurycy