3

私はHTML5開発に非常に慣れていないので、この質問は非常にばかげている可能性がありますが、その答えを見つけました(または非常によく検索しました)。

郵便でフォームをWebサービスに送信したい(URLのすべてのフィールドを表示したくない)。

私は2つの質問があります:

  1. フォームフィールドにどのように名前を付ける必要がありますか?私が送信しようとするとuserName、その値を保持するフィールドにIDとしてこのテストを配置する必要があると思います。
  2. そして、これは私がとても興味があるからです。Webサービスに送信されるメッセージ投稿コンテンツはどれですか?

これは私がインターネットを検索しているのを見つけた例です:

 <FORM action="http://somesite.com/prog/adduser" method="post">
    <P>
    <LABEL for="firstname">First name: </LABEL>
              <INPUT type="text" id="firstname"><BR>
    <LABEL for="lastname">Last name: </LABEL>
              <INPUT type="text" id="lastname"><BR>
    <LABEL for="email">email: </LABEL>
              <INPUT type="text" id="email"><BR>
    <INPUT type="radio" name="sex" value="Male"> Male<BR>
    <INPUT type="radio" name="sex" value="Female"> Female<BR>
    <INPUT type="submit" value="Send"> <INPUT type="reset">
    </P>
 </FORM

Webサービスで処理しているときにこれらの値を取得するには、これらのIDが必要になると思いますね。

4

3 に答える 3

2

場合によっては、リダイレクトを使用してページに投稿することもできます (.NET では、次のように処理します)。

<form action="http://myurl/postpage.ashx" method="post">
    <input name="forename" />
    <input name="surname" />
    <input type="submit" value="Submit" />
</form>

そして、postpage.ashxのサーバー側スクリプトで次を使用してこれを取得します。

string forename = Request["forename"];
string surname = Request["surname"];

jQuery を使用して、次のように同じページへの ajax 呼び出しを行うこともできます。

var forename = $("input[name=\"forename\"]").val();
var surname = $("input[name=\"surname\"]").val();

$.ajax({
    url: "http://myurl/postpage.ashx",
    type: "POST",
    async: true, // set to false if you don't mind the page pausing while waiting for response
    cache: false,
    dataType: "json",
    data: "{ 'forename': '" + forename + "', 'surname': '" + surname + "' }",
    contentType: "application/json; charset=utf-8",
    success: function(data) {
        // handle your successful response here
    },
    error: function(xhr, ajaxOptions, thrownError) {
        // handle your fail response here
    }
});

サーバー側のコードで投稿を同じ方法で処理します。ここで注意すべき重要なことは、input 要素のname属性として入力したものが、キーと値のペアとして受信 URL に POST されるということです。

于 2012-07-31T09:25:09.410 に答える
0

すべての Web サービスは、通常、使用可能なフィールドとメソッドの仕様を含むWSDLのようなものを提供する必要があります。接続している Web サービスに url がある場合は、 WSDLを取得してwebservice.comみてください。webservice.com/wsdl

このトピックをチェック:クリック

于 2012-07-31T09:17:24.133 に答える
0

属性「名前」は、そのパラメーターをサーブレット (または任意の場所) に渡すために一意である必要がある属性です。次に、post メソッドがメッセージを暗号化し、サーブレットに送信します。

<form method="post" action = "LoginServlet">
     Name: <input type="text" name="userName">
     Password: <input type="password" name="password"> 

    <input type="submit" name = "Login" class="button">
</form>

そのデータにアクセスするには、サーブレットで次のようにします。

String userName = request.getParameter("userName");
于 2012-07-31T09:26:08.970 に答える