Java源码示例:com.mashape.unirest.request.body.RequestBodyEntity

示例1
private static String generateLink(Map<String, String> request) throws Exception {
  Map<String, String> headers = new HashMap<>();

  headers.put(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON);
  headers.put(JsonKey.AUTHORIZATION, JsonKey.BEARER + getAdminAccessToken());

  ProjectLogger.log(
      "KeycloakRequiredActionLinkUtil:generateLink: complete URL "
          + ProjectUtil.getConfigValue(JsonKey.SUNBIRD_SSO_URL)
          + "realms/"
          + ProjectUtil.getConfigValue(JsonKey.SUNBIRD_SSO_RELAM)
          + SUNBIRD_KEYCLOAK_REQD_ACTION_LINK,
      LoggerEnum.INFO.name());
  ProjectLogger.log(
      "KeycloakRequiredActionLinkUtil:generateLink: request body "
          + mapper.writeValueAsString(request),
      LoggerEnum.INFO.name());
  RequestBodyEntity baseRequest =
      Unirest.post(
              ProjectUtil.getConfigValue(JsonKey.SUNBIRD_SSO_URL)
                  + "realms/"
                  + ProjectUtil.getConfigValue(JsonKey.SUNBIRD_SSO_RELAM)
                  + SUNBIRD_KEYCLOAK_REQD_ACTION_LINK)
          .headers(headers)
          .body(mapper.writeValueAsString(request));
  HttpResponse<JsonNode> response = baseRequest.asJson();

  ProjectLogger.log(
      "KeycloakRequiredActionLinkUtil:generateLink: Response status = "
          + response.getStatus()
          + " body "
          + response.getBody(),
      LoggerEnum.INFO.name());

  return response.getBody().getObject().getString(LINK);
}
 
示例2
protected Activity send(Activity activity) throws UnirestException, HttpResponseException, AuthenticationException {
	log.info(String.format(
			"Sending activity of type %s with activityId=%s, conversationId=%s with callbackUrl as %s",
			activity.getType(), activity.getId(), activity.getConversation().getId(), activity.getServiceUrl()));

	Jsonb jsonb = JsonbBuilder.create();
	String jsonPayload = jsonb.toJson(activity);

	log.debug("Sending payload: " + jsonPayload);

	RequestBodyEntity request = Unirest.post(getBotUrl()).body(jsonPayload);
	Map<String, List<String>> headers = request.getHttpRequest().getHeaders();
	headers.put(CONTENT_TYPE_HEADER_KEY, Collections.singletonList(CONTENT_TYPE_APPLICATION_JSON));

	if (hasAuthProperties()) {
		JMeterVariables vars = getThreadContext().getVariables();
		log.debug("Has security data");

		if (vars.get(TOKEN) == null) {
			log.debug("Token is null, authenticating");
			TokenResponse tokenResponse = AuthHelper.getToken(getPropertyAsString(BotServiceSecurityConfig.APP_ID),
					getPropertyAsString(BotServiceSecurityConfig.CLIENT_SECRET));

			vars.put(TOKEN, tokenResponse.getAccessToken());

		} else {
			log.debug("Token is not null, will reuse it");
		}

		String token = vars.get(TOKEN);
		headers.put(AUTHORIZATION_HEADER, Collections.singletonList("Bearer " + token));

	} else {
		log.debug("No security properties available. Will proceed without authentication.");
	}

	HttpResponse<InputStream> postResponse = request.asBinary();
	ensureResponseSuccess(postResponse);

	return activity;
}