繁体   English   中英

Http GET请求在默认端口上的Jersey中不起作用(80)

[英]Http GET request not working in Jersey on default port(80)

我有两个Java Webapp,例如MyApp和AuthEngine。 AuthEngine是可以由任何其他应用程序使用的通用身份验证应用程序。 当用户登录MyApp时,用户凭据将发送到AuthEngine进行验证。 我正在使用jersey客户端来调用AuthEngine的服务(不使用任何REST功能,AuthEngine是使用常规Java Servlet开发的)。

WebResource resource =  null;
resource = authClient.resource("http://localhost:8080/authengine/authenticate");
queryParam = new MultivaluedMapImpl();
queryParam.add("username", username);
queryParam.add("password", password);
clientResponse = resource.queryParams(queryParam).get(ClientResponse.class);
response = clientResponse.getEntity(String.class);

这里一切都很好。 MyApp从authengine调用身份验证servlet并返回状态。

但是,如果我使用80作为myapp和authengine的端口,而不是使用端口8080,则一切都会中断

当我使用端口80时,未调用对authEngine的身份验证请求,并且在响应中导致空值。

我尝试使用不同的端口号,除80外,其他端口似乎都可以正常工作。有人可以帮我找出这个奇怪问题的原因吗? 我没办法!!

1)您的两个Web应用都说MyApp和Auth Engine不能具有相同的实例,即(端口号)
2)如上所述,将您的身份验证引擎设置为Web服务(球衣)。
3)将服务(身份验证引擎)指向Myapp,即,将URL映射到Myapp Web ...
4)在http 1.1协议中的Tomcat中检查您的server.xml文件,其端口号为80
5)您不需要在url中明确指定端口号80,因为http的默认端口号是80而https是443

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM