使用 JDBC 客户端检索 servlet 中的参数
Retrieve parameters in a servlet with a JDBC client
我有一个 JDBC 客户端调用一个 servlet。
这是我的客户:
String query = "select * FROM Table";
int port = 8080;
String user = "user";
String password = "passwd";
String jdbcAvaticaURL = "jdbc:avatica:remote:url=http://localhost:"+port+";authentication=BASIC;serialization=JSON";
Connection connection = DriverManager.getConnection(jdbcAvaticaURL, user, password); // ,info);
executeQuery(connection,query);
connection.close();
这是我的 servlet :
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.getParameter("user"); // returns NULL
Enumeration<String> params = request.getParameterNames(); // Empty Collection
response.setContentType("application/json;charset=utf-8");
response.setStatus(HttpServletResponse.SC_OK);
// DO THINGS
}
有没有办法从 servlet 中的 DriverManager.getConnection(jdbcAvaticaURL, user, password);
检索用户和密码?
我已经尝试过 String auth = request.getHeader("Authorization");
当我将参数放入 JDBC URL 时,它工作正常,我可以检索用户和密码,但这不是我想要的.
很好,在尝试获取请求的属性、参数等...后,结果证明凭据就在请求中...
在 servlet 中执行此操作让我可以访问用于客户端连接的用户和密码(经过一些 JSON 解析):
String myRequest = request.getReader().lines().collect(Collectors.joining(System.lineSeparator()));
我有一个 JDBC 客户端调用一个 servlet。
这是我的客户:
String query = "select * FROM Table";
int port = 8080;
String user = "user";
String password = "passwd";
String jdbcAvaticaURL = "jdbc:avatica:remote:url=http://localhost:"+port+";authentication=BASIC;serialization=JSON";
Connection connection = DriverManager.getConnection(jdbcAvaticaURL, user, password); // ,info);
executeQuery(connection,query);
connection.close();
这是我的 servlet :
@Override
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
request.getParameter("user"); // returns NULL
Enumeration<String> params = request.getParameterNames(); // Empty Collection
response.setContentType("application/json;charset=utf-8");
response.setStatus(HttpServletResponse.SC_OK);
// DO THINGS
}
有没有办法从 servlet 中的 DriverManager.getConnection(jdbcAvaticaURL, user, password);
检索用户和密码?
我已经尝试过 String auth = request.getHeader("Authorization");
当我将参数放入 JDBC URL 时,它工作正常,我可以检索用户和密码,但这不是我想要的.
很好,在尝试获取请求的属性、参数等...后,结果证明凭据就在请求中...
在 servlet 中执行此操作让我可以访问用于客户端连接的用户和密码(经过一些 JSON 解析):
String myRequest = request.getReader().lines().collect(Collectors.joining(System.lineSeparator()));