Получение ошибки 501
Я получаю следующую ошибку при попытке запустить этот код в браузере. "Ответ об ошибке Код ошибки: 501 Сообщение: неподдерживаемый метод (" POST "). Объяснение кода ошибки: 501 - Сервер не поддерживает эту операцию".
Следующие ошибки были в консоли браузера:
"1. Не удалось загрузить ресурс: сервер ответил со статусом 404 (файл не найден)
'http://localhost:8002/js/jquery-1.3.2.min.js'
- Ресурс интерпретируется как Script, но передается с типом MIME text/plain: pquery-0.0.1.js:1
Не удалось загрузить ресурс http://mdsad.com/p.js?v=1372783767755 undefined login.html: 61 POST
http://localhost:8002/login.html 501 (Unsupported method ('POST')) login.html:1
Ресурс интерпретируется как Script, но передается с типом MIME text/plain: pquery-0.0.1.js:1
- ПОЛУЧИТЕ http://mdsad.com/p.js?v=1372783801500 download.js: 33 "
Авторизация пользователей через стекмоб также не удалась. Я получаю предупреждение "Сбой". Вот код:
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script type="text/javascript" src="http://static.stackmob.com/js/stackmob-js-0.9.1-bundled-min.js"></script>
<script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Login Form</title>
<link href="css/style.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
$(document).ready(function() {
$(".username").focus(function() {
$(".user-icon").css("left","-48px");
});
$(".username").blur(function() {
$(".user-icon").css("left","0px");
});
$(".password").focus(function() {
$(".pass-icon").css("left","-48px");
});
$(".password").blur(function() {
$(".pass-icon").css("left","0px");
});
});
</script>
<script type="text/javascript">
function nextpage(form){
StackMob.init({
publicKey:"my_key",apiVersion:0
});
var u=document.getElementById('username').value;
var p=document.getElementById('password').value;
var user = new StackMob.User({ username: u, password: p});
user.login(false, {
success: function(model, result, options) {
alert("Success");
StackMob.isUserLoggedIn(form.username.value, {
yes: function() { alert("Yes"); },
no: function() {
alert("No");}
});
},
error: function(model, result, options) {
console.log(result);
alert("Failure");//or print out the error
} }); };
</script>
</head>
<body>
<div id="wrapper">
<div class="user-icon"></div>
<div class="pass-icon"></div>
<form name="login-form" class="login-form" action="" method="post">
<div class="header">
<h1>Login Form</h1>
<span>Fill in the details</span>
</div>
<div class="content">
<input id="username" name="username" type="text" class="input username" value="Username" onfocus="this.value=''" />
<input id="password" name="password" type="password" class="input password" value="Password" onfocus="this.value=''" />
</div>
<div class="footer">
<input type="submit" name="submit" value="Login" class="button" onclick="nextpage(this.form)"/>
<input type="submit" name="submit" value="Register" class="register" />
</div>
</form>
</div>
<div class="gradient"></div>
</body>
</html>
Тем не менее, я уверен в части стека, потому что она хорошо работала в моем простом коде. Вот рабочий простой код:
<html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script type="text/javascript" src="http://static.stackmob.com/js/stackmob-js-0.9.1-bundled-min.js"></script>
<script type="text/javascript">
function nextpage(form){
StackMob.init({publicKey:"my_key",apiVersion:0});
var u=document.getElementById('username').value;
var p=document.getElementById('password').value;
user.login(false, {
success: function(model, result, options) {
alert("Success");
StackMob.isUserLoggedIn(form.username.value, {
yes: function() { alert("Yes"); },
no: function() {
alert("No");
}
});
},
error: function(model, result, options) {
console.log(result);
alert("Failure");//or print out the error
}
});
};
</script>
</head>
<body>
<form>
<table>
<tr><td>Username</td><td><input id="username" type="text"></td></tr>
<tr><td>Password</td><td><input id="password" type="text"></td></tr>
<tr><input type="button" value="LOGIN" onclick="nextpage(this.form)"></tr>
</table>
</form>
</body>
</html>
Может кто-нибудь сказать мне, где я иду не так?
2 ответа
Вы используете локальный сервер через порт 8802, но файл javascript "jquery-1.3.2.min.js" находится не в указанном месте, поэтому ошибка 404.
Ошибка 501 заключается в том, что используемый вами сервер (предположительно что-то вроде simpleHTTPServer) не поддерживает запросы POST.
Чтобы устранить эту ошибку, вам нужно использовать сервер, который поддерживает запросы POST (например, Apache, IIS).
Ваш импорт Jquery дважды и две разные версии могут добавить всевозможные странные проблемы, если предположить, что 404 неточен.
Удалить эту строку:
<script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
Если больше ничего не очистит 404