jenkinsci / java-client-api

A Jenkins API client for Java
MIT License
896 stars 468 forks source link

status code: 414, reason phrase: Request-URI Too Large #462

Open GridxFuJun opened 4 years ago

GridxFuJun commented 4 years ago

org.apache.http.client.HttpResponseException: status code: 414, reason phrase: Request-URI Too Large at com.offbytwo.jenkins.client.validator.HttpResponseValidator.validateResponse(HttpResponseValidator.java:11) at com.offbytwo.jenkins.client.JenkinsHttpClient.post(JenkinsHttpClient.java:261) at com.offbytwo.jenkins.model.Job.build(Job.java:151) at com.offbytwo.jenkins.model.Job.build(Job.java:113)

when build job with params, The parameter is a very long value, there will be the following error.In the source code, although the operation is a post request, he stitched the parameters on the url.

public QueueReference build(Map<String, String> params, Map<String, File> fileParams, boolean crumbFlag) throws IOException { String qs = join(Collections2.transform(params.entrySet(), new MapEntryToQueryStringPair()), "&"); ExtractHeader location = client.post(url + "buildWithParameters?" + qs,null, ExtractHeader.class, fileParams, crumbFlag); return new QueueReference(location.getLocation()); }