2017-06-29 6 views
1

drucken Ich verwende Ajax, um JSON-Daten von einer URL zu analysieren. Ich muss das analysierte Array in einer Variablen erfassen. Wie würde ich darüber gehen?JSON-Zeichenfolge aus URL

Dank
function rvOffices() { 
$.ajax({ 
    url:'https://api.greenhouse.io/v1/boards/roivantsciences/offices', 
    type:'GET', 
    data: JSON.stringify(data), 
    dataType: 'text', 
    success: function(data) { 
     // get string 
    } 
}); 
} 
rvOffices(); 
var rvOfficesString = // resultant string 
+0

können Sie http://api.jquery.com/jquery.parsejson/ verwenden, so dass Sie brauchen var data = $ .parseJSON (jsonData) ... – RohitS

+0

Sie sagen, dass verwenden Sie eher als ein Ajax-Aufruf? – pjldesign

+0

None vorausgesetzt, dass alles funktioniert ok mit Ihrer Einrichtung in Erfolg, um die Daten zurück zu bekommen, verwenden Sie es – RohitS

Antwort

2

Sie JSON.parse(data) verwenden können, um die gewünschte Ausgabe zu JSON zu konvertieren, und greifen dann die Objekte und Array-Indizes aus, dass mit .object und [array_index] jeweils :

function rvOffices() { 
 
    $.ajax({ 
 
    url: 'https://api.greenhouse.io/v1/boards/roivantsciences/offices', 
 
    type: 'GET', 
 
    dataType: 'text', 
 
    success: function(data) { 
 
     var json_result = JSON.parse(data); 
 
     //console.log(json_result); // The whole JSON 
 
     console.log(json_result.offices[0].name); 
 
    } 
 
    }); 
 
} 
 
rvOffices();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

Sie müssen auch keine data übergeben, da Sie eine GET Anfrage ausführen.

Hoffe, das hilft! :)

+0

Danke, das hilft! – pjldesign

-1

können Sie versuchen, so etwas wie: -

$.ajax({ 
    url:'https://api.greenhouse.io/v1/boards/roivantsciences/offices', 
    type:'GET', 
    dataType: 'text', 
    success: function(response) { 
    // get string 
     window.temp = JSON.parse(response); 
    } 
}); 
1

Also ich denke, Sie über den Ajax-Aufruf nicht sicher sind, läßt es so brechen ..

  1. Ajax-Aufruf ein einfaches Verfahren ist eine Anforderung an Remote-Ressource (Get/Post/put zu machen ...) hängt die Art der Anfrage (GET/POST) von Ihrem Bedarf ab.

  2. Wenn Sie also einen Endpunkt haben, der einfach Daten zurückgibt, ist in Ihrem Fall eine einfache get/post-Anfrage ausreichend.

  3. Sie können Zusatzdaten mit Anfrage senden, um die Daten vom Endpunkt zu erhalten (sagen ID der Ressource (sagen Person) deren andere Felder wie Name, Alter, Adresse erhalten möchten).

  4. hier ist link für Ajax-Request in jQuery

  5. hier ist jQuery parse json Parse json in jQuery

So zum Beispiel:

// let's say when you call this function it will make post request to fixed end point and return data else null 
 

 
function rvOffices() { 
 
var res = null; // let be default null 
 
$.ajax({ 
 
url:'https://api.greenhouse.io/v1/boards/roivantsciences/offices', 
 
type:'GET', // type of request method 
 
dataType: 'text', // type of data you want to send if any. 
 
success: function(data) { 
 
    res = $.parseJSON(data); // will do the parsing of data returned if ajax succeeds (assuming your endpoint will return JSON data.) 
 
} 
 
}); 
 
return res; 
 
} 
 

 
// lets call the function 
 
var rvOfficesString = rvOffices(); 
 

 
// print the value returned 
 
console.log(rvOfficesString);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>