2012-05-20 91 views
0

我要開發Chrome擴展的要求,因爲我需要發佈使用REST API服務的產品信息,下面是URLjQuery的REST API後調用

https://ABCD.com/api/products/?token=XXXXf&product[name]=Headphones&product[price]=100&product[permalink]=headphones1 

得到響應時,直接將在瀏覽器..

,但我需要通過JQuery AJAX調用後發佈這個..我嘗試了一些辦法,但沒有運氣..

我嘗試:

var product = [{ "name": "128.3657142857143", "price": "7", "permalink": "headphones1"}]; 
    $.ajax({ 
     type: "POST", 
     url: "URL", 
     // The key needs to match your method's input parameter (case-sensitive). 
     data: JSON.stringify({ token: 'XXXX', product: product }), 
     contentType: "application/json; charset=utf-8", 
     dataType: "json", 
     success: function (data) { alert(data); }, 
     failure: function (errMsg) { 
      alert(errMsg); 
     } 
    }); 

POST調用

變種產物= [{ 「名稱」: 「128.3657142857143」, 「價格」: 「7」, 「永久」: 「headphones1」}];

$.post("URL", JSON.stringify({ token: 'XXXX', product: product }), 
    function (data) { 
     alert('success'); 
    } 
); 

錯誤 的XMLHttpRequest無法加載URL。 Access-Control-Allow-Origin不允許Origin null。

好心幫我在如何形成的jquery ajax調用

+0

請告訴我們你到目前爲止做了些什麼。 –

+0

再次編輯該問題..再次重溫問題 –

+0

檢查我的答案。 –

回答

0

jQuery post API參考。

三十字符限制。

但是,更重要的是,您需要確保您已授予您的Chrome擴展權限才能訪問該域(whatever.herokuapp.com)。

+0

是我的ajax post的方式可以嗎? –

+0

如果您使用$ .post(url,data) –

+0

,我也會這麼做,但是不能正常工作。無論如何,我會再試一次 –

0

這是前一陣子問的,所以它可能不再相關,但是!

好像你根本不需要POST,你想要一個GET。

因爲:

  1. 它,當你在地址欄輸入網址(這是一個GET)
  2. URL具有正確的GET查詢數據

隨着這個以下工作控制檯中的頁面:

var data = { 
    token: 'XXXX', 
    product: { "name": "128.3657142857143", "price": "7", "permalink": "headphones1"} 
} 

$.get('/', data); 

然後檢查網絡請求,我看到:

GET http://stackoverflow.com/?token=XXXX&product[name]=128.3657142857143&product[price]=7&product[permalink]=headphones1