我尝试用django开发聊天应用程序。一切正常,但我有一个奇怪的问题。 POST 127 0 0 1/403(FORBIDDEN) - 每隔几秒钟。
我的message_box.js:
// load messages every 1000 milliseconds from server.
load_data = {'fetch':1};
window.setInterval(function(){
$.post('/', load_data, function(data) {
$('.message_box').html(data);
var scrolltoh = $('.message_box')[0].scrollHeight;
$('.message_box').scrollTop(scrolltoh);
});
}, 1000);
$("#shout_message").keypress(function(evt) {
if(evt.which == 13) {
var iusername = $('#shout_username').val();
var imessage = $('#shout_message').val();
post_data = {'username':iusername, 'message':imessage};
$.post('/', post_data, function(data) {
$(data).hide().appendTo('.message_box').fadeIn();
var scrolltoh = $('.message_box')[0].scrollHeight;
$('.message_box').scrollTop(scrolltoh);
$('#shout_message').val('');
}).fail(function(err) {
alert(err.statusText);
});
}
});
urls.py:
url(r'^$', chat_index, name='home'),
HTML:
<form action="." method="POST">{% csrf_token %}
<div class="shout_box">
<div class="header">Max Shout Box <div class="close_btn"> </div></div>
<div class="toggle_chat">
<div class="message_box">
</div>
<div class="user_info">
<input name="shout_username" id="shout_username" type="text" placeholder="Your Name" maxlength="15" />
<input name="shout_message" id="shout_message" type="text" placeholder="Type Message Hit Enter" maxlength="100" />
</div>
</div>
</div>
</form>
我认为我的观点存在问题(你可以帮我解决这个问题吗?):
def chat_index(request):
print(request.method)
if request.method == "POST":
print request.POST
else:
pass
return render_to_response('base.html',
context_instance=RequestContext(request))
如果可以使用ajax重写此表单,请帮助我这样做。感谢。