2015-06-05 68 views
0

在這裏,這是一個DOM模塊在我的鐵的Ajax元素: 在這裏,這是我的javascript:PolymerElements鐵AJAX不發佈數據

var iron_ajax = document.querySelector('iron-ajax'); 
iron_ajax.body = {"full_names":profile.getName(),"access_token":googleUser.getAuthResponse().id_token}; 
iron_ajax.generateRequest(); 

當我搶$ _ POST變量和轉儲內容到一個文件(將它們編碼爲json後)我得到[] (這意味着沒有數據,零,沒有)。當我在發送變量之前.log()以確保我沒有發送空格時,這些值確實會出現,所以這不是我發送空格。 我認爲這是一個錯誤,或者我只是不明白它是如何工作的。有人可以請幫助。謝謝。

回答

3

我找到了解決方案。這不是聚合物問題。當您使用內容類型JSON進行POST時,將不會填充$ _POST。試試這個在服務器端:

$json = file_get_contents("php://input"); 
    $_POST = json_decode($json, true); 

現在你的POST-陣列將充滿你的請求數據。

+0

而且不要忘了你的JSON.stringify POST數據bevor發送請求。 –

0

我想知道你的iron-ajax函數是什麼,但這裏是我擁有的,它的工作原理。

<iron-ajax auto url="http://localhost:11111/api/Test" headers='{"Accept": "application/json"}' handle-as="json" on-response="ajaxResponse"></iron-ajax> 
 
... 
 

 
ajaxResponse: function (event) { 
 
    this.response = event.detail.response; 
 
}