我正在編寫一個聊天應用程序,並希望在第一次聊天呼叫中獲得隨後所有AJAX呼叫的設置。如何從AJAX調用中更新我的AJAX設置?
我設置的默認jQuery的AJAX設置:
jQ.ajaxSetup({
url : 'chat.php',
contentType: 'application/json'
dataType : 'json',
type : 'post'
});
然後我通過行動回報包含數據連接到特定聊天JSON對象。
jQ.ajax({
data: {
'action' : 'connect'
},
success: function (data) {
if (data.success) {
// set user ID and chat ID for all subsequent ajax calls
if (data.partner) {
// start fetching data to listen for messages
} else {
// keep checking for partner
}
} else {
// chat connect failed
}
}
});
如果創建聊天和用戶連接到一個聊天對象,每0.2秒我從服務器獲取數據,像這樣:
setTimeout(fetchData, 200);
function fetchData(){
jQ.ajax({
data: {
'action' : 'fetch'
},
success: function (data) {
if (data.success) {
// update messages
}
setTimeout(fetchData, 200);
});
}
我也有AJAX功能發佈數據斷開與聊天的連接,基本上他們都需要擁有與初始「連接」操作相同的聊天憑證。
什麼是最好的方法來實現這一目標?
創建的共享範圍的數據對象,您可以使用後續請求傳遞到獲取包含客戶端ID信息 –
我沒想到這樣做的數據,但不知道是否有任何:否則,它擴大其他方式來做到這一點,因爲它需要擴大與「行動」財產的對象! –
是的,那正是我要做的。將證書存儲在「全局」對象中,然後根據需要使用操作擴展該全局對象。 –