1

そこで、C#アプリケーションからASPWebアプリケーションにデータを送信するプロジェクトに取り組んでいます。問題は、データを送信したいときに次のエラーが発生することです:リモートサーバーがエラーを返しました:(405)メソッドは許可されていません。 これが私のC#コードです:

    static void Main(string[] args)
    {
        using (var wb = new WebClient())
        {
            var data = new NameValueCollection();
            string url = "http://localhost:4241/HtmlPage2.html";
            data["Text1"] = "Anas";
            data["Text2"] = "Anas";
            var response = wb.UploadValues(url, "POST", data);
        }
    }

ここに私のASPコードがあります(これはテスト用の単なるHTMLページであり、コードはに実装されてHtmlPage2.htmlおり、ボタンを送信するとデータが渡されますHtmlPage2.html

    <!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title></title>
</head>
<body>
    <form method="Post" action="HtmlPage2.html">
        <input id="Text1" type="text" name="Text1" />
        <input id="Text2" type="text" name="Text2" />
        <input id="Button1" type="submit" value="button" />
    </form>
</body>
</html>

注意:私のIISはすでに有効になっています:)誰かが私を助けてくれるなら、私はとても感謝しています:)

4

1 に答える 1

0

HTML ファイルは、ファイルシステム ベースの Web サーバー上の静的ファイルです。POST 要求を処理する方法はなく、GET のみです (WebDAV を使用している場合を除きますが、それは別の話です)。

基本的に、<form action="HtmlPage2.html">フラグメントは正しくありません。Web ブラウザーで機能する場合は、ページの DOM をチェックして、action属性が変更されているかどうかを確認します。

于 2013-03-14T17:59:58.660 に答える