3

私はjavascriptでこのコードを持っています、

var path = 'remote site action.php';
var form = document.createElement("form");
form.setAttribute("method", 'POST');
form.setAttribute("action", path);
var code = "some info";

        var hiddenField = document.createElement("input");
        hiddenField.setAttribute("type", "hidden");
        hiddenField.setAttribute("name", "data");
        hiddenField.setAttribute("value", code);

        form.appendChild(hiddenField);
        document.body.appendChild(form);

 form.submit();

残念ながら、リモートサーバーに投稿できません。コードはその仕事をしますが、実行すると、リモートページにアクセスが拒否されたと表示されます。(権限がありません) (リモートサーバー/action.php)。リモート ページのパーミッション パラメータを変更する必要がありますか?...何か提案はありますか?

4

3 に答える 3

0

サーバーで認証が有効になっているようです。基本認証を有効にしていますか? サーバーへの POST は許可されていますか、それとも GET しか使用できませんか? クロスドメインを送信していますか? これを引き起こしている可能性のあるシナリオはたくさんあるので、最も可能性の高い原因を特定してそこから進む必要があります。JavaScript がサーバーに投稿している場合、問題は JS ではなく、サーバーにあります。

于 2012-07-25T03:59:15.307 に答える
0

403 アクセスが拒否された場合、問題は、サーバーがそのページを誰にも見られたくないということです。サーバーの場合は、そのページの権限設定を変更してみてください。HTML フォームを送信する場合、クロスドメインは問題になりません。

于 2012-07-25T03:57:35.473 に答える
-1

1.ブラウザのアドレスバーを参照してください。このスクリプトのURLは、C:\またはfile://ではなくhttp://で始まる必要があります (スクリプトが.htmlとして保存され、クリックして実行した場合は常に発生します)

2.スクリプトのドメインを参照してください。server/action.phpと同じである必要があります。

于 2012-07-25T04:11:28.187 に答える