1

このコードをブラウザで実行しようとすると、次のエラーが発生します。「エラー応答エラー コード: 501 メッセージ: サポートされていないメソッド ('POST')。エラー コードの説明: 501 - サーバーはこの操作をサポートしていません。」

ブラウザ コンソールに次のエラーが表示されました。

"1. リソースの読み込みに失敗しました: サーバーは 404 のステータスで応答しました (ファイルが見つかりません)

 'http://localhost:8002/js/jquery-1.3.2.min.js'
  1. リソースはスクリプトとして解釈されますが、MIME タイプ text/plain で転送されます: pquery-0.0.1.js:1
  2. リソースの読み込みに失敗しましたhttp://mdsad.com/p.js?v=1372783767755 undefined login.html:61 POST

    http://localhost:8002/login.html 501 (Unsupported method ('POST')) login.html:1
    

    リソースはスクリプトとして解釈されますが、MIME タイプ text/plain で転送されます: pquery-0.0.1.js:1

  3. GET http://mdsad.com/p.js?v=1372783801500 download.js:33"

stackmob を介したユーザーのログインも失敗します。「失敗」警告メッセージが表示されます。コードは次のとおりです。

    <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>

ただし、私の単純なコードではうまく機能したため、stackmob の部分については確信があります。これが実際の簡単なコードです:

    <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>

誰かが私にどこが間違っているのか教えてもらえますか?

4

2 に答える 2

10

ポート 8802 でローカル サーバーを実行していますが、JavaScript ファイル "jquery-1.3.2.min.js" が指定された場所にないため、404 エラーが発生します。

501 エラーは、使用しているサーバー (おそらく simpleHTTPServer のようなもの) が POST 要求をサポートしていないためです。

このエラーを解決するには、POST リクエストをサポートするサーバー (Apache、IIS など) を使用する必要があります。

于 2013-07-02T17:29:07.583 に答える
1

Jqueryを2回インポートし、2つの異なるバージョンをインポートすると、404が不正確であると仮定すると、あらゆる種類の奇妙な問題が追加される可能性があります.

次の行を削除します。

<script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>

他に何もなければ、404をクリアします

于 2013-07-02T17:21:43.637 に答える