本文整理汇总了Java中com.koushikdutta.async.http.server.AsyncHttpServer类的典型用法代码示例。如果您正苦于以下问题:Java AsyncHttpServer类的具体用法?Java AsyncHttpServer怎么用?Java AsyncHttpServer使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
AsyncHttpServer类属于com.koushikdutta.async.http.server包,在下文中一共展示了AsyncHttpServer类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: testMaxAgePrivate
import com.koushikdutta.async.http.server.AsyncHttpServer; //导入依赖的package包/类
public void testMaxAgePrivate() throws Exception {
AsyncHttpClient client = new AsyncHttpClient(AsyncServer.getDefault());
ResponseCacheMiddleware cache = ResponseCacheMiddleware.addCache(client, new File(getContext().getFilesDir(), "AndroidAsyncTest"), 1024 * 1024 * 10);
AsyncHttpServer httpServer = new AsyncHttpServer();
try {
httpServer.get("/uname/(.*)", new HttpServerRequestCallback() {
@Override
public void onRequest(AsyncHttpServerRequest request, AsyncHttpServerResponse response) {
response.getHeaders().set("Date", HttpDate.format(new Date()));
response.getHeaders().set("Cache-Control", "private, max-age=10000");
response.send(request.getMatcher().group(1));
}
});
AsyncServerSocket socket = httpServer.listen(AsyncServer.getDefault(), 0);
int port = socket.getLocalPort();
// clear the old cache
cache.clear();
client.executeString(new AsyncHttpGet("http://localhost:" + port + "/uname/43434"), null).get();
client.executeString(new AsyncHttpGet("http://localhost:" + port + "/uname/43434"), null).get();
assertEquals(cache.getCacheHitCount(), 1);
assertEquals(cache.getNetworkCount(), 1);
}
finally {
AsyncServer.getDefault().stop();
client.getMiddleware().remove(cache);
}
}
示例2: setUp
import com.koushikdutta.async.http.server.AsyncHttpServer; //导入依赖的package包/类
@Override
protected void setUp() throws Exception {
super.setUp();
httpServer = new AsyncHttpServer();
httpServer.setErrorCallback(new CompletedCallback() {
@Override
public void onCompleted(Exception ex) {
fail();
}
});
httpServer.listen(AsyncServer.getDefault(), 5000);
httpServer.websocket("/ws", new WebSocketRequestCallback() {
@Override
public void onConnected(final WebSocket webSocket, AsyncHttpServerRequest request) {
webSocket.setStringCallback(new StringCallback() {
@Override
public void onStringAvailable(String s) {
webSocket.send(s);
}
});
}
});
}
示例3: testKeys
import com.koushikdutta.async.http.server.AsyncHttpServer; //导入依赖的package包/类
public void testKeys() throws Exception {
KeyManagerFactory kmf = KeyManagerFactory.getInstance("X509");
KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType());
ks.load(getContext().getResources().openRawResource(R.raw.keystore), "storepass".toCharArray());
kmf.init(ks, "storepass".toCharArray());
TrustManagerFactory tmf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
KeyStore ts = KeyStore.getInstance(KeyStore.getDefaultType());
ts.load(getContext().getResources().openRawResource(R.raw.keystore), "storepass".toCharArray());
tmf.init(ts);
SSLContext sslContext = SSLContext.getInstance("TLS");
sslContext.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null);
AsyncHttpServer httpServer = new AsyncHttpServer();
httpServer.listenSecure(8888, sslContext);
httpServer.get("/", new HttpServerRequestCallback() {
@Override
public void onRequest(AsyncHttpServerRequest request, AsyncHttpServerResponse response) {
response.send("hello");
}
});
Thread.sleep(1000);
AsyncHttpClient.getDefaultInstance().getSSLSocketMiddleware().setSSLContext(sslContext);
AsyncHttpClient.getDefaultInstance().getSSLSocketMiddleware().setTrustManagers(tmf.getTrustManagers());
AsyncHttpClient.getDefaultInstance().executeString(new AsyncHttpGet("https://localhost:8888/"), null).get();
}
示例4: BeamServer
import com.koushikdutta.async.http.server.AsyncHttpServer; //导入依赖的package包/类
public BeamServer(String host, int port) {
mHttpServer = new AsyncHttpServer() {
protected boolean onRequest(AsyncHttpServerRequest httpServerRequest, AsyncHttpServerResponse httpServerResponse) {
Timber.d(httpServerRequest.toString());
httpServerResponse.getHeaders().set("Access-Control-Allow-Origin", "*");
return super.onRequest(httpServerRequest, httpServerResponse);
}
};
sHost = host;
sPort = port;
for (FileType localFileType : FILE_TYPES) {
VideoFileReponse localVideoFileReponse = new VideoFileReponse(localFileType);
mHttpServer.get("/video." + localFileType.extension, localVideoFileReponse);
mHttpServer.addAction("HEAD", "/video." + localFileType.extension, localVideoFileReponse);
}
for(FileType localSubsFileType : SUB_TYPES) {
SubtitleFileResponse localSubsFileReponse = new SubtitleFileResponse(localSubsFileType);
mHttpServer.get("/video." + localSubsFileType.extension, localSubsFileReponse);
mHttpServer.addAction("HEAD", "/video." + localSubsFileType.extension, localSubsFileReponse);
}
mHttpServer.get("/(.*?)", new HttpServerRequestCallback() {
@Override
public void onRequest(AsyncHttpServerRequest request, AsyncHttpServerResponse response) {
response.send("Not found");
response.code(404);
}
});
}
示例5: onResume
import com.koushikdutta.async.http.server.AsyncHttpServer; //导入依赖的package包/类
@Override
protected void onResume() {
super.onResume();
this.server = new AsyncHttpServer();
server.websocket("/live", new AsyncHttpServer.WebSocketRequestCallback() {
@Override
public void onConnected(final WebSocket webSocket, AsyncHttpServerRequest request) {
//Use this to clean up any references to your websocket
webSocket.setClosedCallback(new CompletedCallback() {
@Override
public void onCompleted(Exception ex) {
try {
if (ex != null)
Log.e("WebSocket", "Error");
} finally {
}
}
});
webSocket.setStringCallback(new WebSocket.StringCallback() {
@Override
public void onStringAvailable(String s) {
toast(s);
}
});
}
});
server.listen(8888);
}
示例6: setupWebSockets
import com.koushikdutta.async.http.server.AsyncHttpServer; //导入依赖的package包/类
private void setupWebSockets() {
mServer.websocket("/live", new AsyncHttpServer.WebSocketRequestCallback() {
@Override public void onConnected(final WebSocket socket, AsyncHttpServerRequest req) {
_sockets.add(socket);
if (_sockets.size() == 1) {
// first client connected, register receivers
registerReceivers();
}
socket.setClosedCallback(new CompletedCallback() {
@Override public void onCompleted(final Exception ex) {
_sockets.remove(socket);
if (_sockets.size() == 0) {
// No client left, unregister to save battery
unregisterReceivers();
}
}
});
socket.setStringCallback(new WebSocket.StringCallback() {
@Override public void onStringAvailable(final String s) {
Timber.v(s);
//noinspection StatementWithEmptyBody
if (ACTION_CONNECTED.equals(s)) {
//TODO: initializing
}
}
});
socket.send(ACTION_CONNECTED);
}
});
}
示例7: getMimeType
import com.koushikdutta.async.http.server.AsyncHttpServer; //导入依赖的package包/类
private String getMimeType(String filePath) {
String mimeType = AsyncHttpServer.getContentType(filePath);
if ("text/plain".equals(mimeType)) {
if (filePath.endsWith(".mp3")) {
mimeType = "audio/mp3";
} else if (filePath.contains(".mp4?")) {
mimeType = "video/mp4";
}
}
return mimeType;
}
示例8: getServer
import com.koushikdutta.async.http.server.AsyncHttpServer; //导入依赖的package包/类
public AsyncHttpServer getServer() {
return server;
}
示例9: setServer
import com.koushikdutta.async.http.server.AsyncHttpServer; //导入依赖的package包/类
public void setServer(AsyncHttpServer server) {
this.server = server;
}
示例10: getServer
import com.koushikdutta.async.http.server.AsyncHttpServer; //导入依赖的package包/类
public AsyncHttpServer getServer() { return mServer; }