/** * Creates an empty repository (under the configured user). * It is created as a public repository, un-initialized. * * @param projectName the project name (repository) to create * @throws IOException Something went wrong (example: the repo already exists) */ void createEmptyRepo(String projectName) throws IOException { Executor executor = getExecutor(); String gogsHooksConfigUrl = getGogsServer_apiUrl() + "user/repos"; int result = executor .execute(Request .Post(gogsHooksConfigUrl) .bodyForm(Form.form() .add("name", projectName) .add("description", "API generated repository") .add("private", "true") .add("auto_init", "false") .build() ) ) .returnResponse().getStatusLine().getStatusCode(); if (result != 201) { throw new IOException("Repository creation call did not return the expected value (returned " + result + ")"); } }
private void post() throws IOException { //以Http/1.1版本协议执行一个POST请求,同时配置Expect-continue handshake达到性能调优, //请求中包含String类型的请求体并将响应内容作为byte[]返回 Request.Post("http://blog.csdn.net/vector_yi") .useExpectContinue() .version(HttpVersion.HTTP_1_1) .bodyString("Important stuff", ContentType.DEFAULT_TEXT) .execute().returnContent().asBytes(); //通过代理执行一个POST请求并添加一个自定义的头部属性,请求包含一个HTML表单类型的请求体 //将返回的响应内容存入文件 Request.Post("http://blog.csdn.net/vector_yi") .addHeader("X-Custom-header", "stuff") .viaProxy(new HttpHost("myproxy", 8080)) .bodyForm(Form.form().add("username", "vip").add("password", "secret").build()) .execute().saveContent(new File("result.dump")); Request.Post("http://targethost/login") .bodyForm(Form.form().add("username", "vip").add("password", "secret").build()) .execute().returnContent(); }
@Override protected AccessTokenData requestAccessTokenData(AuthorizationData authorizationData) throws NotificationException { try { String authorizationCode = authorizationData.getAuthorizationCode(); String response = Request.Post(getAccessTokenUrl(authorizationCode).get()).bodyForm( Form.form() .add("client_id", getClientId()) .add("client_secret", getClientSecret()) .add("code", authorizationCode) .add("grant_type", "authorization_code").build()) .execute().returnContent().asString(); JsonObject json = new JsonParser().parse(response).getAsJsonObject(); String accessToken = json.get("access_token").getAsString(); String tokenType = json.get("token_type").getAsString(); return new AccessTokenData(accessToken, ImmutableMap.of("tokenType", tokenType)); } catch (IOException e) { throw new NotificationException(e); } }
@Override public AccessToken loginApplication(AuthHeader authHeader, String grantType, String scope) { Form form = Form.form(); form.add(SCOPE, scope); form.add(GRANT_TYPE, grantType); Response respose = null; try { respose = Request.Post(apiUrl + "/oauth2/token") .addHeader(AUTHORIZATION, authHeader.getAuhorization()) .addHeader(CONTENT_TYPE, "application/x-www-form-urlencoded") .bodyForm(form.build()) .bodyString("grant_type=client_credentials&scope=" + scope, ContentType.APPLICATION_JSON) .execute(); } catch (IOException ex) { throw new WebApplicationException(); } return unMarshall(respose, AccessToken.class); }
public void authenticate(String username, String password) throws IOException { HttpResponse response = Request.Post("https://app.mybasis.com/login") .bodyForm(Form.form().add("username", username).add("password", password).build()) .execute().returnResponse(); /* find the access token */ HeaderElementIterator it = new BasicHeaderElementIterator(response.headerIterator("Set-Cookie")); while (it.hasNext()) { HeaderElement elem = it.nextElement(); if (elem.getName().equals("access_token")) { accessToken = elem.getValue(); return; } } /* we didn't find an access token, we couldnt login. */ throw new IOException("Unable to login"); }
public static String getAreas() { String timestamp = DateFormatUtils.format(new Date(), "yyyy-MM-dd HH:mm:ss"); List<NameValuePair> nameValuePairList = Form.form().add("method", "taobao.areas.get").add("app_key", "23370620").add("timestamp", timestamp).add("format", "json").add("v", "2.0").add("sign_method","md5").build(); try { String s = Request.Post("http://gw.api.taobao.com/router/rest").bodyForm(nameValuePairList).execute().returnContent().asString(); System.out.println(s); return s; } catch (IOException e) { e.printStackTrace(); return null; } }
/** * TagMe request. */ public JSONObject send() { String response = ""; try { response = Requests.postForm(ENDPOINT, Form.form()// .add("key", TAGME_KEY)// .add("text", sentence)// .add("lang", lang.getLanguage())// .add("epsilon", epsilon)// .add("min_comm", min_comm)// .add("min_link", min_link)// .add("include_categories", include_categories), ContentType.APPLICATION_JSON); return new JSONObject(response); } catch (final IOException e) { LOG.error(e.getLocalizedMessage(), e); } return new JSONObject(); }
@Test public void testBuy() throws IOException { Response response = Request.Post(url + "/buy/" + token).bodyForm( Form.form() .add("security", "000002") .add("name", "万科A") .add("price", "10.00") .add("position", "10000.00") .add("amount", "100") .build(), Charset.forName("utf8") ).execute(); String x = response.returnContent().asString(); System.out.println(x); }
@Test public void testSell() throws IOException { String response = Request.Post(url + "/sell/" + token).bodyForm( Form.form() .add("security", "000002") .add("name", "万科A") .add("price", "10.00") .add("position", "10000.00") .add("amount", "100") .build(), Charset.forName("utf8") ).execute().returnContent().asString(); System.out.println(response); }
private List<NameValuePair> buildFormBody(HttpParameter[] parameters) { Form form = Form.form(); for (HttpParameter param : parameters) { form.add(param.getName(), param.getValue()); } return form.build(); }
/** * Sends a validation request to pushover ensuring that the token and user * is correct, that there is at least one active device on the account. * * Requires token parameter * Requires user parameter * Optional device parameter to check specific device * * @return true if token and user are valid and at least on device is on the account, false otherwise */ public boolean validate() { Objects.requireNonNull(this.pushoverToken, "Token is required for validation"); Objects.requireNonNull(this.pushoverUser, "User is required for validation"); final List<NameValuePair> params = Form.form() .add(Constants.TOKEN.toString(), this.pushoverToken) .add(Constants.USER.toString(), this.pushoverUser) .add(Constants.DEVICE.toString(), this.pushoverDevice) .build(); boolean valid = false; try { final HttpResponse httpResponse = Request.Post(Constants.VALIDATION_URL.toString()) .bodyForm(params, Consts.UTF_8) .execute() .returnResponse(); if (httpResponse != null && httpResponse.getStatusLine().getStatusCode() == HTTP_OK) { final String response = IOUtils.toString(httpResponse.getEntity().getContent(), Consts.UTF_8); if (StringUtils.isNotBlank(response) && response.contains("\"status\":1")) { valid = true; } } } catch (final IOException e) { LOG.error("Failed to send validation requeste to pushover", e); } return valid; }
private Form convertFrom(Map<String, String> parameters) { Form form = Form.form(); for (Map.Entry<String, String> param : parameters.entrySet()) { form.add(param.getKey(), param.getValue()); } form.add("apiUser", sendCloud.apiUser()); form.add("apiKey", sendCloud.apiKey()); return form; }
private static void testFluentPost(String url) { try { String result = Request.Post(url) .cookieSpec(CookieSpecs.BROWSER_COMPATIBILITY) .bodyForm(Form.form().add("a", "abc123") .add("b", "中文abc123").build(), Consts.UTF_8) // 或者传入自定义类型的body // ContentType包含很多常用的content-type // .bodyString("Important stuff 中文abc123", ContentType.DEFAULT_TEXT) .execute().returnContent().asString(); System.out.println(result); } catch (Exception e) { e.printStackTrace(); } }
@Test public void testFormSubmissionAsFormURLEncoded() throws InterruptedException, IOException { Router router = prepareServer(); // Prepare the router with a controller Controller controller = new DefaultController() { @SuppressWarnings("unused") public Result submit() { final Map<String, List<String>> form = context().form(); // String if (!form.get("key").get(0).equals("value")) { return badRequest("key is not equals to value"); } // Multiple values List<String> list = form.get("list"); if (!(list.contains("1") && list.contains("2"))) { return badRequest("list does not contains 1 and 2"); } return ok(context().header(HeaderNames.CONTENT_TYPE)); } }; Route route = new RouteBuilder().route(HttpMethod.POST) .on("/") .to(controller, "submit"); when(router.getRouteFor(anyString(), anyString(), any(org.wisdom.api.http.Request.class))).thenReturn(route); server.start(); waitForStart(server); int port = server.httpPort(); final HttpResponse response = Request.Post("http://localhost:" + port + "/").bodyForm( Form.form().add("key", "value").add("list", "1").add("list", "2").build() ).execute().returnResponse(); assertThat(response.getStatusLine().getStatusCode()).isEqualTo(200); assertThat(EntityUtils.toString(response.getEntity())).contains(MimeTypes.FORM); }
public void initialize(KFLoginModel login) throws Exception { this.login = login; HttpPost req = new HttpPost("http://" + login.getHost() + "/authenticate"); req.setEntity(new UrlEncodedFormEntity(Form.form() .add("DB", login.getDBName()).add("username", login.getUser()) .add("password", login.getPassword()).build())); CloseableHttpResponse res = httpClient.execute(req); int status = res.getStatusLine().getStatusCode(); System.out.println(status); }
public boolean login(String username, String password) throws Exception { HttpPost method = new HttpPost(getServiceURI("account/userLogin")); method.setEntity( new UrlEncodedFormEntity(Form.form().add("userName", username).add("password", password).build())); registrations = getJSON(method); return true; }
/** * Sends a message to pushover * * @return JPushoverResponse instance */ public final JPushoverResponse push() { Objects.requireNonNull(this.pushoverToken, "Token is required for a message"); Objects.requireNonNull(this.pushoverUser, "User is required for a message"); Objects.requireNonNull(this.pushoverMessage, "Message is required for a message"); if (Priority.EMERGENCY.equals(this.pushoverPriority)) { Objects.requireNonNull(this.pushoverRetry, "Retry is required on priority emergency"); Objects.requireNonNull(this.pushoverExpire, "Expire is required on priority emergency"); } final List<NameValuePair> params = Form.form() .add(Constants.TOKEN.toString(), this.pushoverToken) .add(Constants.USER.toString(), this.pushoverUser) .add(Constants.MESSAGE.toString(), this.pushoverMessage) .add(Constants.DEVICE.toString(), this.pushoverDevice) .add(Constants.TITLE.toString(), this.pushoverTitle) .add(Constants.URL.toString(), this.pushoverUrl) .add(Constants.RETRY.toString(), this.pushoverRetry) .add(Constants.EXPIRE.toString(), this.pushoverExpire) .add(Constants.CALLBACK.toString(), this.pushoverCallback) .add(Constants.URLTITLE.toString(), this.pushoverUrlTitle) .add(Constants.PRIORITY.toString(), this.pushoverPriority.toString()) .add(Constants.TIMESTAMP.toString(), this.pushoverTimestamp) .add(Constants.SOUND.toString(), this.pushoverSound.toString()) .add(Constants.HTML.toString(), this.pushoverHtml ? "1" : "0") .build(); JPushoverResponse jPushoverResponse = new JPushoverResponse().isSuccessful(false); try { final HttpResponse httpResponse = Request.Post(Constants.MESSAGES_URL.toString()) .bodyForm(params, Consts.UTF_8) .execute() .returnResponse(); if (httpResponse != null) { final int status = httpResponse.getStatusLine().getStatusCode(); jPushoverResponse .httpStatus(status) .response(IOUtils.toString(httpResponse.getEntity().getContent(), Consts.UTF_8)) .isSuccessful((status == HTTP_OK) ? true : false); } } catch (final IOException e) { LOG.error("Failed to send message to pushover", e); } return jPushoverResponse; }
public static Request post(String url, Form form, ServerProfile sp) throws HttpException, IOException { System.out.println(url); return HttpUtils.setRequest(Request.Post(url).bodyForm(form.build()), sp); }
/** Send Statistics to the server */ private void report(int[] correct) { // At worst, give an empty branch and commit String branch = "", commit = ""; if (System.getenv("TRAVIS_BRANCH") != null) { // Use CI information if possible. branch = System.getenv("TRAVIS_BRANCH"); commit = System.getenv("TRAVIS_COMMIT"); } else { // Otherwise take a stab at it ourselves. try { Repository repo = new FileRepositoryBuilder() .readEnvironment() .findGitDir() .build(); commit = repo .resolve("HEAD") .abbreviate(10) .name(); if (commit == null) { commit = ""; log.warn("Problem finding git repository.\n" + "Resulting stats will be missing information."); } branch = repo.getBranch(); } catch (IOException ex) { // Well at least we tried. } } // Generate report List<NameValuePair> response = Form.form() .add("run[branch]", branch) .add("run[commit_hash]", commit.substring(0, 10)) .add("run[dataset]", dataset) .add("run[top]", String.valueOf(correct[0])) .add("run[top3]", String.valueOf(correct[0] + correct[1] + correct[2])) .add("run[available]", String.valueOf(available)) .add("run[rank]", String.valueOf(total_inverse_rank)) .add("run[total_questions]", String.valueOf(questionsource.size())) .add("run[total_answers]", String.valueOf(total_answers)) .add("run[confidence_histogram]", StringUtils.join(new int[100], " ")) .add("run[confidence_correct_histogram]", StringUtils.join(new int[100], " ")) .add("run[runtime]", String.valueOf(runtime)) .build(); try { Request.Post("http://watsonsim.herokuapp.com/runs.json").bodyForm(response).execute(); } catch (IOException e) { log.warn("Error uploading stats. Ignoring. " + "Details follow.", e); } log.info(correct[0] + " of " + questionsource.size() + " correct"); log.info(available + " of " + questionsource.size() + " could have been"); log.info("Mean Inverse Rank " + total_inverse_rank); }