2017-09-06 1 views
0

사용할 API가 있지만 AJAX를 통해 컬 명령을 입력하는 방법을 모르겠습니다. 어떤 도움을 주시면 감사하겠습니다.curl 명령을 AJAX로 변환

내 curl 명령 : curl -H “Authorization: Token #{auth_token}” -X GET http://localhost:3000/api/v1/baskets/

AJAX 지금까지 :

$.ajax({ 
    url: "http://localhost:3000/api/v1/baskets/", 
    type: 'POST', 
    dataType: 'json', 
    contentType: 'application/json', 
    processData: false, 
    success: function (data) { 
     alert(JSON.stringify(data)); 
    }, 
    error: function(){ 
     alert("Cannot get data"); 
    } 
}); 

UPDATE : 문제 1은 고정되어 있습니다. 나는이 마지막 API 호출을 제외하고 필요한 결과를 얻는 비슷한 방법을 수행 할 수 있었다. 나는 웹 사이트를 제외하고는 모든 것을 얻는 데 어려움을 겪고있다. 컬 명령 : 지금까지 curl -H “Authorization: Token #{auth_token}” -X GET -d ‘basket_id=#{basket_id}&price=#{price}&title=#{title}&merchant_url=#{merchant_url}&comment=#{comment}&product_url=#{product_url}&merchant_name=#{merchant_name}&color=#{color}&size=#{size}&product_image_url=#{product_image_url}’ http://localhost:3000/api/v1/baskets/add

AJAX :

 $.ajax({ 
    url: "http://localhost:3000/api/v1/baskets/add", 
    type: 'GET', 
    processData: false, 
    headers: { 'Authorization' : giftibly_token_string }, 
    data: {"basket_id": "2", "title" : "Hello There", "merchant_name" : "Target", "merchant_URL" : "http://test.com", "product_url" : "http://test.com/product" }, 
    success: function (data) { 
     window.response = JSON.stringify(data); 
     console.log(response); 
    }, 
    error: function(){ 
    console.log("Cannot get data"); 
    } 
}); 

브라우저 결과 :

답변

1

{"response":"Missing attributes: Basket ID, Title, Merchant Name, Merchant URL, Product URL"}

$.ajax({ 
    url: "http://localhost:3000/api/v1/baskets/", 
    type: 'GET', 
    processData: false, 
    headers: { 'Authorization' : 'Token #{auth_token}' }, 
    success: function (data) { 
     alert(JSON.stringify(data)); 
    }, 
    error: function(){ 
     alert("Cannot get data"); 
    } 
}); 
+0

를 작동해야 내 대답과 사이에는 차이가 없습니다. –

+0

방법이 다릅니다. 컬이 POST가 아닌 GET을 사용하고 있습니다. –

+0

GET이 효과적입니다. 둘 다 감사합니다! – Dtrav