当前位置: 首页>>代码示例>>Java>>正文


Java HttpExchange.getRequestMethod方法代码示例

本文整理汇总了Java中com.sun.net.httpserver.HttpExchange.getRequestMethod方法的典型用法代码示例。如果您正苦于以下问题:Java HttpExchange.getRequestMethod方法的具体用法?Java HttpExchange.getRequestMethod怎么用?Java HttpExchange.getRequestMethod使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.sun.net.httpserver.HttpExchange的用法示例。


在下文中一共展示了HttpExchange.getRequestMethod方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: handle

import com.sun.net.httpserver.HttpExchange; //导入方法依赖的package包/类
public void handle(HttpExchange exchange) throws IOException {
    String requestMethod = exchange.getRequestMethod();
    System.out.println(requestMethod + " /post");
    if (requestMethod.equalsIgnoreCase("POST")) {
        String body = new BufferedReader(
                new InputStreamReader(
                        exchange.getRequestBody()
                )
        ).lines().collect(Collectors.joining("\n"));
        String[] parts = body.split("=");
        String name = null;
        if (parts.length > 1) {
            name = parts[1];
        }
        exchange.getResponseHeaders().set(Constants.CONTENTTYPE, Constants.TEXTHTML);
        exchange.sendResponseHeaders(200, 0);
        OutputStream responseBody = exchange.getResponseBody();
        responseBody.write(Constants.getIndexHTML(name));
        responseBody.close();
    } else {
        new NotImplementedHandler().handle(exchange);
    }
}
 
开发者ID:zupzup,项目名称:java-0-deps-webapp,代码行数:24,代码来源:WebApp.java

示例2: handleExchange

import com.sun.net.httpserver.HttpExchange; //导入方法依赖的package包/类
private void handleExchange(HttpExchange msg) throws IOException {
    WSHTTPConnection con = new ServerConnectionImpl(adapter,msg);
    try {
        if (fineTraceEnabled) {
            LOGGER.log(Level.FINE, "Received HTTP request:{0}", msg.getRequestURI());
        }
        String method = msg.getRequestMethod();
        if(method.equals(GET_METHOD) || method.equals(POST_METHOD) || method.equals(HEAD_METHOD)
        || method.equals(PUT_METHOD) || method.equals(DELETE_METHOD)) {
            adapter.handle(con);
        } else {
            if (LOGGER.isLoggable(Level.WARNING)) {
                LOGGER.warning(HttpserverMessages.UNEXPECTED_HTTP_METHOD(method));
            }
        }
    } finally {
        msg.close();
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:20,代码来源:WSHttpHandler.java

示例3: handle

import com.sun.net.httpserver.HttpExchange; //导入方法依赖的package包/类
public void handle(HttpExchange t) throws IOException {
    String verb = t.getRequestMethod();
    String path = t.getRequestURI().getPath();

    if (path.equals("/session") && verb.equals("POST")) {
        System.out.println("Creating a new session!");
        sendOk(t);
        return;
    }

    if (path.equals("/session/" + SESSION_ID + "/screenshot") && verb.equals("GET")) {
        System.out.println("Taking a screenshot");
        sendScreenshot(t);
        return;
    }

    sendOk(t);
}
 
开发者ID:Microsoft,项目名称:AppCenter-Test-Appium-Java-Extensions,代码行数:19,代码来源:AppiumMock.java

示例4: handle

import com.sun.net.httpserver.HttpExchange; //导入方法依赖的package包/类
public void handle(HttpExchange exchange) {
	try {
		exchange.getRequestMethod();
		exchange.getRequestBody().close();
		Headers respHeaders = null;
		if(!accessed && (source == null)) { //context hasn't been accessed before
			source = exchange.getRemoteAddress().getHostString();
			accessed = true;
			respHeaders = exchange.getResponseHeaders();
			respHeaders.add("Content-Type","text/plain");
			exchange.sendResponseHeaders(200,path.length());
			OutputStream os = exchange.getResponseBody();
			os.write(path.getBytes());
			os.flush();
			os.close();
			accessList.put(path,source);
		} else {
			respHeaders = exchange.getResponseHeaders();
			exchange.sendResponseHeaders(404,0);
			exchange.getResponseBody().close();
		}
	} catch(Exception e) {
		System.err.println("Unforeseen error occurred!");
		e.printStackTrace();
	}
}
 
开发者ID:Bort-Millipede,项目名称:WLT3Serial,代码行数:27,代码来源:WebServerTestHelper.java

示例5: handle

import com.sun.net.httpserver.HttpExchange; //导入方法依赖的package包/类
@Override
public void handle(HttpExchange he) throws IOException {
    String method = he.getRequestMethod();
    InputStream is = he.getRequestBody();
    if (method.equalsIgnoreCase("POST")) {
        String requestBody = new String(is.readAllBytes(), US_ASCII);
        if (!requestBody.equals(POST_BODY)) {
            he.sendResponseHeaders(500, -1);
            ok = false;
        } else {
            he.sendResponseHeaders(200, -1);
            ok = true;
        }
    } else { // GET
        he.sendResponseHeaders(200, RESPONSE.length());
        OutputStream os = he.getResponseBody();
        os.write(RESPONSE.getBytes(US_ASCII));
        os.close();
        ok = true;
    }
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:22,代码来源:BasicAuthTest.java

示例6: handle

import com.sun.net.httpserver.HttpExchange; //导入方法依赖的package包/类
@Override
public void handle(HttpExchange he) throws IOException {
    String method = he.getRequestMethod();
    InputStream is = he.getRequestBody();
    Headers h = he.getResponseHeaders();
    h.add("X-Foo-Response", "resp");
    he.sendResponseHeaders(200, RESPONSE.length());
    OutputStream os = he.getResponseBody();
    os.write(RESPONSE.getBytes(US_ASCII));
    os.close();
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:12,代码来源:ImmutableHeaders.java

示例7: generateCurl

import com.sun.net.httpserver.HttpExchange; //导入方法依赖的package包/类
public static String generateCurl(HttpExchange event) throws IOException {
    // uri
    String uri = getSchema(event) + "://" + event.getLocalAddress()  + event.getRequestURI().toString();

    // header
    StringBuilder headers = new StringBuilder();
    event.getRequestHeaders().entrySet()
            .forEach(header -> header.getValue()
                    .forEach(value -> {
                        headers.append(" -H \"" + header.getKey() + ":" + value + "\"");
                    }));

    // body
    String body;
    try (BufferedReader buffer = new BufferedReader(new InputStreamReader(event.getRequestBody()))) {
        body = buffer.lines().collect(Collectors.joining("\n"));
    }

    String curl = "curl" +
            " -v" +
            " -X " + event.getRequestMethod() +
            " " + uri;
    if (headers.length() > 0) {
        curl += headers;
    }

    if (!body.isEmpty()) {
        curl += " -d '" + body + "'";
    }

    return curl;
}
 
开发者ID:openNaEF,项目名称:openNaEF,代码行数:33,代码来源:MockServer.java

示例8: handle

import com.sun.net.httpserver.HttpExchange; //导入方法依赖的package包/类
public void handle(HttpExchange t)
        throws IOException {
    InputStream is = t.getRequestBody();
    Headers map = t.getRequestHeaders();
    Headers rmap = t.getResponseHeaders();
    OutputStream os = t.getResponseBody();
    URI uri = t.getRequestURI();
    String path = uri.getPath();


    while (is.read() != -1) ;
    is.close();

    File f = new File(_docroot, path);
    if (!f.exists()) {
        notfound(t, path);
        return;
    }

    String method = t.getRequestMethod();
    if (method.equals("HEAD")) {
        rmap.set("Content-Length", Long.toString(f.length()));
        t.sendResponseHeaders(200, -1);
        t.close();
    } else if (!method.equals("GET")) {
        t.sendResponseHeaders(405, -1);
        t.close();
        return;
    }

    if (path.endsWith(".html") || path.endsWith(".htm")) {
        rmap.set("Content-Type", "text/html");
    } else {
        rmap.set("Content-Type", "text/plain");
    }

    t.sendResponseHeaders (200, f.length());

    FileInputStream fis = new FileInputStream(f);
    int count = 0;
    try {
        byte[] buf = new byte[16 * 1024];
        int len;
        while ((len = fis.read(buf)) != -1) {
            os.write(buf, 0, len);
            count += len;
        }
    } catch (IOException e) {
        e.printStackTrace();
    }
    fis.close();
    os.close();
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:54,代码来源:SimpleHttpServer.java


注:本文中的com.sun.net.httpserver.HttpExchange.getRequestMethod方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。