1

HTTP Web サーバーに Options メソッドを実装したいと考えています。しかし、このメソッドの動作に関する適切なチュートリアルはまだ見つかりませんでした。このメソッドを実装するコードを 1 つ作成しました。私のコードはこの質問の最後にあります。

しかし、私が使用したサーバーの動作は間違っていると思います。オプション要求を受け取ったときにサーバーが応答する正確な方法/手順を教えてください。親切な対応をお待ちしています。

クライアントコード

public class Client {

    public static void main(String[] args) {
          HttpClient client = new HttpClient();
          client.getParams().setParameter("http.useragent", "Test Client");

          OptionsMethod method = new OptionsMethod("http://localhost:8080");          

          try {
            int returnCode = client.executeMethod(method);
            if(returnCode == 405 ) {
                System.out.println("The Options method is not implemented by this URI");
            } else {
                Header[] header = method.getResponseHeaders();
                for(int i = 0; i < header.length; i++) {
                   System.out.println(header[i].getName() + ": " + header[i].getValue());
                }
            }
          } catch(Exception e) {
            System.out.println("Options method ki to TAI TAI FISSHHHHHH");
          } finally {
                System.out.println("close method");
                method.releaseConnection();
         }
    }
}

サーバー コード (私のサーバーでは PUT、POST、GET、HEAD、OPTIONS メソッドが許可されています)

    printStream.print("HTTP/1.1 200 OK");
    printStream.write(Worker.EOL);
    printStream.print("Date: " + new Date());
    printStream.write(Worker.EOL);
    printStream.print("Allow: OPTIONS, GET, HEAD, POST, PUT");
    printStream.write(Worker.EOL);
    printStream.print("Content-Length: 0");
    printStream.write(Worker.EOL);
    printStream.write(Worker.EOL);

これはサーバーが応答する正しい方法ですか? そうでない場合は、Options Request を取得したときにサーバーが動作していることを教えてください。

4

0 に答える 0