2016-08-18 2 views
4

URLからReactJSにデータを取得する方法を教えてください。 、ブラウザに入力した場合、JSONオブジェクトを表示します http://www.domain.com/api/json/x/a/search.php?s=categoryReactJS - URLからjsonオブジェクトデータを取得する

URLは、次の型です。

どのようにReactJSにロードしますか?で開始する

は、私がすることによって開始:

const dUrl = "http://www.the...."; 

console.log(dUrl); 

が、明らかにそれは私がフィルタリングできるようになる、(URLではないコンテンツを表示する - それはオブジェクトにロードするだけで、この最初のステップだと私は知らない)

編集:私はむしろjQueryを使いたくない。

+0

答えが更新されない限り、この質問に対する受け入れられた回答は変更する必要があります –

答えて

4

これにはAJAXを使用する必要があります。これはjQueryを使用すると簡単です。

const dUrl = "http://www.domain.com"; 

$.ajax(
    { 
    url: dUrl, 
    success: function(result){ 
     console.log(result); 
    } 
    } 
); 

jQueryを追加/インポートする必要があります。

あなたは、AJAXを追加したくない場合は、次の

function loadData(url) { 
    var xhttp = new XMLHttpRequest(); 
    xhttp.onreadystatechange = function() { 
    if (xhttp.readyState == 4 && xhttp.status == 200) { 
     console.log(xhttp.responseText); 
    } 
    }; 
    xhttp.open("GET", url, true); 
    xhttp.send(); 
} 

はまあuはアヤックスを使用する必要がありますAJAX

+2

ありがとうございます。私は追加することを忘れました - 私はむしろjQueryを使用したくないです。私のgoogleのほとんどの例は、jqueryのソリューションを提供します。私は標準JSが欲しいです。 – Wasteland

+0

私はその答えを更新しました。 –

+0

ありがとうございます。私は両方の方法を試してみました。私は1つの質問がある。結果の出力(オブジェクト)の違いは何ですか? jqueryメソッドは(コンソールログで)オブジェクトを展開して(要素に)出力できるので、コンソールでうまく整理できます。純粋なJSソリューションは、要素を折りたたんだり展開したりすることなく、長い文字列を表示します。私は、jqueryメソッドは後で処理するのが簡単な方法でデータを扱うと仮定します。 JSでどうやってやるの? – Wasteland

12

Fetch APIを使用してみてください。Facebookによって推奨されています。 jQueryとReactJSを混在させずに、ReactJSのDOM操作方法に固執する必要があります。

function getMoviesFromApiAsync() { 
    return fetch('https://facebook.github.io/react-native/movies.json') 
    .then((response) => response.json()) 
    .then((responseJson) => { 
    return responseJson.movies; 
    }) 
    .catch((error) => { 
    console.error(error); 
    }); 
} 

またはasync /待つ

async function getMoviesFromApi() { 
    try { 
    let response = await fetch('https://facebook.github.io/react-native/movies.json'); 
    let responseJson = await response.json(); 
    return responseJson.movies; 
    } catch(error) { 
    console.error(error); 
    } 
} 

https://facebook.github.io/react-native/docs/network.html

を使用して、私はURLが反応ネイティブのドキュメントのためであるが、これは、同様ReactJSの申請を承知しています。

+0

正しい答えが得意です。正解と出典がある方が良いです。 – HoldOffHunger

+0

upvotingこれは受け入れられた回答である必要があるため –

関連する問題