• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java HttpExchange类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.eclipse.jetty.client.HttpExchange的典型用法代码示例。如果您正苦于以下问题:Java HttpExchange类的具体用法?Java HttpExchange怎么用?Java HttpExchange使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



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

示例1: compareHeaders

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
private void compareHeaders(HttpExchange httpConn, String checkHeaders) throws Exception {
    ContentExchange exch = (ContentExchange) httpConn;

    String[] headerList = checkHeaders.split(Strings.NL);
    for (String header : headerList) {
        String[] nameValue = header.split(":", 2);

        if (nameValue[0].equals("responseCode")) {
            if (Integer.parseInt(nameValue[1].trim()) != exch.getResponseStatus()) {
                error("Incorrect Response Status",
                        String.format("%d expected %s", exch.getResponseStatus(), nameValue[1]));
            }
        } else {
            if (!nameValue[1].trim().equals(exch.getResponseFields().getStringField(nameValue[0]))) {
                error("Incorrect Response Header", String.format("%s expected %s", exch.getResponseFields()
                        .getStringField(nameValue[0]), nameValue[1].trim()));
            }
        }
    }
}
 
开发者ID:jaytaylor,项目名称:sql-layer,代码行数:21,代码来源:RestServiceScriptsIT.java


示例2: compareHeaders

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
private void compareHeaders (HttpExchange httpConn, String checkHeaders) throws Exception {
    ContentExchange exch = (ContentExchange)httpConn;
    
    String[] headerList = checkHeaders.split("\n");
    for (String header : headerList) {
        String[] nameValue = header.split(":", 2);
        
        if (nameValue[0].equals("responseCode")) {
            assertEquals ("Headers Response", Integer.parseInt(nameValue[1].trim()), 
                    exch.getResponseStatus());
        } else {
            assertEquals ("Headers check", nameValue[1].trim(),
                    exch.getResponseFields().getStringField(nameValue[0]));
        }
    }
}
 
开发者ID:jaytaylor,项目名称:sql-layer,代码行数:17,代码来源:RestServiceFilesIT.java


示例3: asyncGet

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
/**
 * Sends an HTTP GET request using the asynchronous client
 * 
 * @param Path
 *            Path of the requested resource
 * @param Args
 *            Arguments for the request
 * @param Callback
 *            Callback to handle the response with
 */
public HttpExchange asyncGet(String path, String args, FritzahaCallback callback) {
	if (!isAuthenticated())
		authenticate();
	HttpExchange getExchange = new FritzahaContentExchange(callback);
	getExchange.setMethod("GET");
	getExchange.setURL(getURL(path, addSID(args)));
	try {
		asyncclient.send(getExchange);
	} catch (IOException e) {
		logger.error("An I/O error occurred while sending the GET request " + getURL(path, addSID(args)));
		return null;
	}
	logger.debug("GETting URL " + getURL(path, addSID(args)));
	return getExchange;
}
 
开发者ID:andrey-desman,项目名称:openhab-hdl,代码行数:26,代码来源:FritzahaWebInterface.java


示例4: asyncPost

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
/**
 * Sends an HTTP POST request using the asynchronous client
 * 
 * @param Path
 *            Path of the requested resource
 * @param Args
 *            Arguments for the request
 * @param Callback
 *            Callback to handle the response with
 */
public HttpExchange asyncPost(String path, String args, FritzahaCallback callback) {
	if (!isAuthenticated())
		authenticate();
	HttpExchange postExchange = new FritzahaContentExchange(callback);
	postExchange.setMethod("POST");
	postExchange.setURL(getURL(path));
	try {
		postExchange.setRequestContent(new ByteArrayBuffer(addSID(args).getBytes("UTF-8")));
	} catch (UnsupportedEncodingException e1) {
		logger.error("An encoding error occurred in the POST arguments");
		return null;
	}
	postExchange.setRequestContentType("application/x-www-form-urlencoded;charset=utf-8");
	try {
		asyncclient.send(postExchange);
	} catch (IOException e) {
		logger.error("An I/O error occurred while sending the POST request to " + getURL(path));
		return null;
	}
	return postExchange;
}
 
开发者ID:andrey-desman,项目名称:openhab-hdl,代码行数:32,代码来源:FritzahaWebInterface.java


示例5: testMetadata

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Test
public void testMetadata() throws Exception {
	// for usage see
	// http://www.eclipse.org/jetty/documentation/current/http-client-api.html
	HttpClient http = new HttpClient();
	http.start();
	
	HttpExchange request = new HttpExchange() {
           protected void onResponseContent(Buffer content) {
               try {
                   Assert.assertEquals(ObjectConverterUtil.convertFileToString(UnitTestUtil.getTestDataFile("loopy-edmx-metadata.xml")), new String(content.asArray()));
               } catch (IOException e) {
                   Assert.fail();
               }
           }
           protected void onResponseStatus(Buffer version, int status, Buffer reason){
               Assert.assertEquals(200, status);
           }            
	};
	request.setURL("http://localhost:"+port+"/odata4/loopy/vm1/$metadata");
	request.setMethod("GET");
	
	http.send(request);
	request.waitForDone();
}
 
开发者ID:kenweezy,项目名称:teiid,代码行数:26,代码来源:TestODataIntegration.java


示例6: tesSystemMetadata

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Test
public void tesSystemMetadata() throws Exception {
	// for usage see
	// http://www.eclipse.org/jetty/documentation/current/http-client-api.html
	HttpClient http = new HttpClient();
	http.start();

       HttpExchange request = new HttpExchange() {
           protected void onResponseStatus(Buffer version, int status, Buffer reason){
               Assert.assertEquals(200, status);
           }            
       };
       request.setURL("http://localhost:"+port+"/odata4/loopy/SYS/$metadata");
       request.setMethod("GET");
       http.send(request);
       request.waitForDone();
}
 
开发者ID:kenweezy,项目名称:teiid,代码行数:18,代码来源:TestODataIntegration.java


示例7: tesServiceMetadata

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Test
public void tesServiceMetadata() throws Exception {
	// for usage see
	// http://www.eclipse.org/jetty/documentation/current/http-client-api.html
	HttpClient http = new HttpClient();
	http.start();

       //TODO: match the document here.. port is being random
       
       HttpExchange request = new HttpExchange() {
           protected void onResponseStatus(Buffer version, int status, Buffer reason){
               Assert.assertEquals(200, status);
           }            
       };
       request.setURL("http://localhost:"+port+"/odata4/loopy/VM1");
       request.setMethod("GET");
       
       http.send(request);
       request.waitForDone();
}
 
开发者ID:kenweezy,项目名称:teiid,代码行数:21,代码来源:TestODataIntegration.java


示例8: testEntitySet

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Test
public void testEntitySet() throws Exception {
	// for usage see
	// http://www.eclipse.org/jetty/documentation/current/http-client-api.html
	HttpClient http = new HttpClient();
	http.start();
       
       HttpExchange request = new HttpExchange() {
           protected void onResponseContent(Buffer content) {
               Assert.assertEquals("{\"@odata.context\":\"$metadata#G1\",\"value\":[{\"e1\":\"ABCDEFGHIJ\",\"e2\":0,\"e3\":0.0}]}", new String(content.asArray()));
           }
           protected void onResponseStatus(Buffer version, int status, Buffer reason){
               Assert.assertEquals(200, status);
           }            
       };
       request.setURL("http://localhost:"+port+"/odata4/loopy/vm1/G1");
       request.setMethod("GET");
       http.send(request);   
       request.waitForDone();
       request.waitForDone();
}
 
开发者ID:kenweezy,项目名称:teiid,代码行数:22,代码来源:TestODataIntegration.java


示例9: testEntitySetWithKey

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Test
public void testEntitySetWithKey() throws Exception {
	// for usage see
	// http://www.eclipse.org/jetty/documentation/current/http-client-api.html
	HttpClient http = new HttpClient();
	http.start();

       HttpExchange request = new HttpExchange() {
           protected void onResponseContent(Buffer content) {
               Assert.assertEquals("{\"@odata.context\":\"$metadata#G1/$entity\",\"value\":[{\"e1\":\"ABCDEFGHIJ\",\"e2\":0,\"e3\":0.0}]}", new String(content.asArray()));
           }
           protected void onResponseStatus(Buffer version, int status, Buffer reason){
               Assert.assertEquals(200, status);
           }            
       };
       request.setURL("http://localhost:"+port+"/odata4/loopy/vm1/G1(0)");
       request.setMethod("GET");
       http.send(request);
       request.waitForDone();
}
 
开发者ID:kenweezy,项目名称:teiid,代码行数:21,代码来源:TestODataIntegration.java


示例10: testIndividualProperty

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Test
public void testIndividualProperty() throws Exception {
    // for usage see
    // http://www.eclipse.org/jetty/documentation/current/http-client-api.html
    HttpClient http = new HttpClient();
    http.start();

    HttpExchange request = new HttpExchange() {
        protected void onResponseContent(Buffer content) {
            Assert.assertEquals("{\"@odata.context\":\"$metadata#Edm.String\",\"value\":\"ABCDEFGHIJ\"}", new String(content.asArray()));
        }
        protected void onResponseStatus(Buffer version, int status, Buffer reason){
            Assert.assertEquals(200, status);
        }            
    };
    request.setURL("http://localhost:"+port+"/odata4/loopy/vm1/G1(1)/e1");
    request.setMethod("GET");
    http.send(request);
    request.waitForDone();
}
 
开发者ID:kenweezy,项目名称:teiid,代码行数:21,代码来源:TestODataIntegration.java


示例11: testProcedure

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Ignore
@Test
public void testProcedure() throws Exception {
    // for usage see
    // http://www.eclipse.org/jetty/documentation/current/http-client-api.html
    HttpClient http = new HttpClient();
    http.start();

    HttpExchange request = new HttpExchange() {
        protected void onResponseContent(Buffer content) {
            Assert.assertEquals("{\"@odata.context\":\"$metadata#Edm.String\",\"value\":\"ABCDEFGHIJ\"}", new String(content.asArray()));
        }
        protected void onResponseStatus(Buffer version, int status, Buffer reason){
            Assert.assertEquals(200, status);
        }            
    };
    request.setURL("http://localhost:"+port+"/odata4/loopy/vm1/proc(x='foo')");
    request.setMethod("GET");
    http.send(request);
    request.waitForDone();
}
 
开发者ID:kenweezy,项目名称:teiid,代码行数:22,代码来源:TestODataIntegration.java


示例12: asyncGet

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
/**
 * Sends an HTTP GET request using the asynchronous client
 * 
 * @param Path
 *            Path of the requested resource
 * @param Args
 *            Arguments for the request
 * @param Callback
 *            Callback to handle the response with
 */
public HttpExchange asyncGet(String path, String args, FritzahaCallback callback) {
    if (!isAuthenticated()) {
        authenticate();
    }
    HttpExchange getExchange = new FritzahaContentExchange(callback);
    getExchange.setMethod("GET");
    getExchange.setURL(getURL(path, addSID(args)));
    try {
        asyncclient.send(getExchange);
    } catch (IOException e) {
        logger.error("An I/O error occurred while sending the GET request " + getURL(path, addSID(args)));
        return null;
    }
    logger.debug("GETting URL " + getURL(path, addSID(args)));
    return getExchange;
}
 
开发者ID:openhab,项目名称:openhab1-addons,代码行数:27,代码来源:FritzahaWebInterface.java


示例13: asyncPost

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
/**
 * Sends an HTTP POST request using the asynchronous client
 * 
 * @param Path
 *            Path of the requested resource
 * @param Args
 *            Arguments for the request
 * @param Callback
 *            Callback to handle the response with
 */
public HttpExchange asyncPost(String path, String args, FritzahaCallback callback) {
    if (!isAuthenticated()) {
        authenticate();
    }
    HttpExchange postExchange = new FritzahaContentExchange(callback);
    postExchange.setMethod("POST");
    postExchange.setURL(getURL(path));
    try {
        postExchange.setRequestContent(new ByteArrayBuffer(addSID(args).getBytes("UTF-8")));
    } catch (UnsupportedEncodingException e1) {
        logger.error("An encoding error occurred in the POST arguments");
        return null;
    }
    postExchange.setRequestContentType("application/x-www-form-urlencoded;charset=utf-8");
    try {
        asyncclient.send(postExchange);
    } catch (IOException e) {
        logger.error("An I/O error occurred while sending the POST request to " + getURL(path));
        return null;
    }
    return postExchange;
}
 
开发者ID:openhab,项目名称:openhab1-addons,代码行数:33,代码来源:FritzahaWebInterface.java


示例14: getAllBooks

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Override
public Book[] getAllBooks() {
    try {
        ContentExchange contentExchange = new ContentExchange(true);
        contentExchange.setMethod("GET");
        contentExchange.setURL("http://" + host + ":" + port + "/get_books");
        httpClient.send(contentExchange);

        if (contentExchange.waitForDone() == HttpExchange.STATUS_COMPLETED) {
            return objectMapper.readValue(contentExchange.getResponseContent(), Book[].class);
        } else {
            throw new RuntimeException("Exception making request to retrieve all books");
        }
    } catch (Exception e) {
        throw new RuntimeException("Exception making request to retrieve all books", e);
    }
}
 
开发者ID:jamesdbloom,项目名称:mockserver,代码行数:18,代码来源:BookServiceJettyHttpClient.java


示例15: getBook

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Override
public Book getBook(String id) {
    try {
        ContentExchange contentExchange = new ContentExchange(true);
        contentExchange.setMethod("GET");
        contentExchange.setURL("http://" + host + ":" + port + "/get_book" + "?id=" + id);
        httpClient.send(contentExchange);

        if (contentExchange.waitForDone() == HttpExchange.STATUS_COMPLETED) {
            return objectMapper.readValue(contentExchange.getResponseContent(), Book.class);
        } else {
            throw new RuntimeException("Exception making request to retrieve all books");
        }

    } catch (Exception e) {
        throw new RuntimeException("Exception making request to retrieve a book with id [" + id + "]", e);
    }
}
 
开发者ID:jamesdbloom,项目名称:mockserver,代码行数:19,代码来源:BookServiceJettyHttpClient.java


示例16: createCallable

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Override
protected Callable<StreamResponseMessage> createCallable(final StreamRequestMessage requestMessage,
                                                         final HttpContentExchange exchange) {
    return new Callable<StreamResponseMessage>() {
        public StreamResponseMessage call() throws Exception {

            if (log.isLoggable(Level.FINE))
                log.fine("Sending HTTP request: " + requestMessage);

            client.send(exchange);
            int exchangeState = exchange.waitForDone();

            if (exchangeState == HttpExchange.STATUS_COMPLETED) {
                try {
                    return exchange.createResponse();
                } catch (Throwable t) {
                    log.log(Level.WARNING, "Error reading response: " + requestMessage, Exceptions.unwrap(t));
                    return null;
                }
            } else if (exchangeState == HttpExchange.STATUS_CANCELLED) {
                // That's ok, happens when we abort the exchange after timeout
                return null;
            } else if (exchangeState == HttpExchange.STATUS_EXCEPTED) {
                // The warnings of the "excepted" condition are logged in HttpContentExchange
                return null;
            } else {
                log.warning("Unhandled HTTP exchange status: " + exchangeState);
                return null;
            }
        }
    };
}
 
开发者ID:archos-sa,项目名称:aos-MediaLib,代码行数:33,代码来源:ArchosStreamClientImpl.java


示例17: RedirectListener

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
public RedirectListener(HttpDestination destination, HttpExchange ex)
{
    // Start of sending events through to the wrapped listener
    // Next decision point is the onResponseStatus
    super(ex.getEventListener(),true);

    _destination = destination;
    _exchange = ex;
}
 
开发者ID:TimelyPick,项目名称:HtmlSpeed,代码行数:10,代码来源:RedirectListener.java


示例18: notFoundXml

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Test
public void notFoundXml() throws Exception {
  ContentExchange exchange = sendRequest(FEED_URL + "('Z')");
  exchange.waitForDone();
  assertThat(exchange.getStatus(), is(HttpExchange.STATUS_COMPLETED));
  assertThat(exchange.getResponseStatus(), is(HttpStatus.NOT_FOUND_404));
  assertThat(exchange.getResponseFields().getStringField(HttpHeaders.CONTENT_TYPE), containsString(MediaType.APPLICATION_XML));
  assertThat(exchange.getResponseContent().length(), greaterThan(0));
  assertRegexMatches(exchange.getResponseContent(), ".*<code>NotFoundException</code>.*");
  assertRegexNotMatches(exchange.getResponseContent(), ".*<innererror>.+</innererror>.*");
}
 
开发者ID:teiid,项目名称:oreva,代码行数:12,代码来源:ErrorTest.java


示例19: notFoundJson

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Test
public void notFoundJson() throws Exception {
  ContentExchange exchange = sendRequest(FEED_URL + "('Z')?$format=jsonverbose");
  exchange.waitForDone();
  assertThat(exchange.getStatus(), is(HttpExchange.STATUS_COMPLETED));
  assertThat(exchange.getResponseStatus(), is(HttpStatus.NOT_FOUND_404));
  assertThat(exchange.getResponseFields().getStringField(HttpHeaders.CONTENT_TYPE), containsString(MediaType.APPLICATION_JSON));
  assertThat(exchange.getResponseContent().length(), greaterThan(0));
  assertRegexMatches(exchange.getResponseContent(), ".*\"code\"\\s*:\\s*\"NotFoundException\".*");
  assertRegexNotMatches(exchange.getResponseContent(), ".*\"innererror\"\\s*:\\s*\".+\".*");
}
 
开发者ID:teiid,项目名称:oreva,代码行数:12,代码来源:ErrorTest.java


示例20: badRequestXmlWithInnerError

import org.eclipse.jetty.client.HttpExchange; //导入依赖的package包/类
@Test
public void badRequestXmlWithInnerError() throws Exception {
  simulateErrorResponseExtension();
  ContentExchange exchange = sendRequest(FEED_URL + "(1.2)");
  exchange.waitForDone();
  assertThat(exchange.getStatus(), is(HttpExchange.STATUS_COMPLETED));
  assertThat(exchange.getResponseStatus(), is(HttpStatus.NOT_FOUND_404));
  assertThat(exchange.getResponseFields().getStringField(HttpHeaders.CONTENT_TYPE), containsString(MediaType.APPLICATION_XML));
  assertThat(exchange.getResponseContent().length(), greaterThan(0));
  assertRegexMatches(exchange.getResponseContent(), ".*<code>NotFoundException</code>.*<innererror>.+</innererror>.*");
}
 
开发者ID:teiid,项目名称:oreva,代码行数:12,代码来源:ErrorTest.java



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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java ThreadListener类代码示例发布时间:2022-05-22
下一篇:
Java ReadOnlyZooKeeperServer类代码示例发布时间:2022-05-22
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap