你好stackoverflow社區,我正在學習如何實現Pusher API http://pusher.com到這個簡單的網絡聊天應用程序。我正在按照視頻教程正確執行每一步,但當我嘗試發送消息時,它會在我的網絡瀏覽器上正確顯示,但不會在其他網絡瀏覽器上顯示或刷新。我將添加我的2個PHP文件,它們很短。集成Pusher到一個簡單的PHP網絡應用程序
<!doctype html>
<html>
<head>
<meta charset="utf-8" />
<title>Pusher Messenger</title>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
<script src="https://js.pusher.com/3.1/pusher.min.js"></script>
<script>
// Enable pusher logging - don't include this in production
//Pusher.logToConsole = true;
var pusher = new Pusher('your pusher key here', {
encrypted: true
});
var channel = pusher.subscribe('channel_pusher');
channel.bind('new_message', function(response){
$('#sent_messages').append('<li>' + response.message + '</li>');
});
$(function(){
$('form').submit(function(){
$.post('ajax.php', { msj : $('#input_mensaje').val() }, function(response){
//funcion de callback
$('#sent_messages').append('<li>' + response.message + '</li>');
}, 'json');
return false;
});
});
</script>
</head>
<body>
<form action="" methor="post">
<input type="text" id="input_mensaje" />
<input type="submit" class="submit" value="Send" />
</form>
<ul id="sent_messages">
<!-- Sent messages will be shown here -->
</ul>
</body>
</html>
這是我的ajax.php文件:
<?php
require('lib/Pusher.php');
$options = array(
'encrypted' => true
);
$message = $_POST['msj'];
$pusher = new Pusher(
'code provided by pusher',
'code provided by pusher',
'code provided by pusher',
$options
);
$pusher->trigger(
'channel_pusher',
'new_message',
array('message' => $message)
);
echo json_encode(array('message' => $message));
?>
歡迎來到StackOverflow。聽起來像你應該指定在哪個瀏覽器中正確地爲你工作,並且在哪個瀏覽器中沒有。還是其他任何瀏覽器,包括另一臺PC上的相同瀏覽器和PC上的另一臺瀏覽器? – YakovL
是的,你是對的,它不會刷新任何網頁瀏覽器,主要問題是它沒有顯示實時消息。例如:我寫了「Hello」,它會將其顯示在我的網絡瀏覽器上,但如果旁邊有另一個網絡瀏覽器,則不會顯示任何消息。 –
我可以得到一些幫助嗎? –