2016-12-24 7 views
1

Rubyで書かれたAPIコードをループ内のリクエストでAPIを呼び出すと、最大50件の結果が得られます。しかし、私はこのAPIリクエストをjQueryで作成したいと思います。そして、私はこれをどうやってやるのか分かりません。ここでjQueryでAPIリクエストを取得およびポストする方法は?

は私のRubyコードです:

totalsequence = [] 
    start = 0 
    begin 
     response = HTTParty.get("https://api.ontraport.com/1/objects?objectID=5&start=" + start.to_s, 
     { 
      :headers => { 'Api-Appid' => '', 'Api-Key' => ''} 
     }) 
     totalsequence = totalsequence + response['data'] 
     start += 50 
    end until (response['data']).size == 0 
    render json: JSON.pretty_generate(totalsequence) 

は、だから私は、このコードはjQueryのに変換することにしたいです。

+0

私はあなたが求めているものには明らかではないのですか? – MZaragoza

+1

上記のコードをjQueryに変換するだけの場合は、すばやくGoogle検索を行うとコードサンプルが大量に発生します。 – Sid

+0

[jQuery Ajaxのシンプルな呼び出し]の可能な複製(http://stackoverflow.com/questions/19015897/jquery-ajax-simple-call) –

答えて

3

jQueryのでは、このようなjQuery.ajaxを使用することができます。

$.ajax({ 
    url: "https://api.ontraport.com/1/objects?objectID=5&start=" + start.to_s, 
    type: 'GET', 
    headers: { 
     'Api-Appid': '2_7861_X3YeBz0j1', 
     'Api-Key': 'NXhYJvz2AsywN80' 
    }, 
    data { 
     'key1': 'value1', 
     'key2': 'value2', 
     ... 
    }, 
    dataType: 'json', 
    success: function(data) { 
     // handle success here via accessing data variable 
     // returned from the server as response 
    }, 
    error: function(error) { 
     // handle error here via accessing error variable 
    }, 
}); 

data属性は、キーと値のペアである必要があり、サーバーに送信するデータを指定します。

詳しくはjQuery Ajax Propertiesを参照してください。

+0

このエラーが発生しました 'クロスオリジン要求がブロックされました:同じオリジンポリシーは、リモートリソースの読み取りをhttps://api.ontraport.com/1/objects?objectID=5&start=50で禁止します(理由:CORSヘッダー 'Access-Control-Allow-Origin'がありません)。 –

+2

要求しているサーバーでCORSを有効にする必要があることを確認してください... http://enable-cors.org/server.html –

+0

@エリスハミルトン - あなたがこの答えを見つけたら、この答えを受け入れて、それをアップアップして、このような他の質問への回答を促し、他の人が正しい答えをすばやく見つけるのを助けてくれるでしょう! –

2

これを試してみてください。

Ajax post

$.ajax({ 
    type: "POST", 
    url: url, 
    data: data, 
    success: success, 
    dataType: dataType 
}); 

Ajax get

$.ajax({ 
    url: url, 
    data: data, 
    success: success, 
    dataType: dataType 
}); 
+0

ルビーコントローラに行くのは嫌です –

+0

もしRailsコントローラでないなら、どこですか?また、AjaxリクエストのURLが '/ create'と言ってはいけません。 – Sid

+0

ok wait @ElsieHamilton –

関連する問題