![](/img/trans.png)
[英]Getting error while trying to create HttpsURLConnection through proxy
[英]HttpsURLConnection getting 504 error frequently
我在Java-1.8中使用HttpsURLconnection并将其发布到具有某些参数的URL。 很多时候获得200成功响应,但有些时候则获得504网关超时错误。
Iam长时间在此错误中苦苦挣扎。 任何指导将大有帮助。 下面是正在使用的代码。
public static void sendPostRequest(String url, ResourceRequest resourceRequest,
ResourceResponse resourceResponse)
{
String token_response = "";
String grant_password = PrefsPropsUtil.getString("grant.type");
String client_id = PrefsPropsUtil.getString("client.id");
String user_name = PrefsPropsUtil.getString("user.name");
String client_secret = PrefsPropsUtil.getString("client.secret");
PrintWriter out = resourceResponse.getWriter();
URL obj = new URL(url);
System.setProperty("jdk.http.auth.proxying.disabledSchemes", "");
System.setProperty("jdk.http.auth.tunneling.disabledSchemes", "");
HttpsURLConnection con = (HttpsURLConnection) obj.openConnection();
//add request header
con.setRequestMethod("POST");
// con.setRequestProperty("User-Agent", USER_AGENT);
con.setRequestProperty("Accept-Language", "en-US,en;q=0.5");
String urlParameters = "grant_type=" + grant_password + "&client_id=" + client_id + "&username=&client_secret=" + client_secret;
// Send post request
con.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes(urlParameters);
wr.flush();
wr.close();
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
con.disconnect();
//print result
System.out.println(response.toString());
out.println(response);
}
在上面的代码中,我不知道我在哪里做错了,请对此进行纠正。
5xx
代码被视为服务器错误。 因此,这很可能不是请求方的问题。
504网关超时:服务器充当网关或代理,没有及时收到上游服务器的响应。
我建议您检查服务器的代理设置是否正确或上游服务器的稳定性等HttpsURLconnection
并不能说太多。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.