Java Code Examples for org.scribe.model.OAuthRequest#addBodyParameter()

The following examples show how to use org.scribe.model.OAuthRequest#addBodyParameter() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: Google2Api.java    From jpa-invoicer with The Unlicense 6 votes vote down vote up
@Override
public Token getAccessToken(Token requestToken, Verifier verifier) {
    OAuthRequest request = new OAuthRequest(api.getAccessTokenVerb(), api.getAccessTokenEndpoint());
    switch (api.getAccessTokenVerb()) {
    case POST:
        request.addBodyParameter(OAuthConstants.CLIENT_ID, config.getApiKey());
        request.addBodyParameter(OAuthConstants.CLIENT_SECRET, config.getApiSecret());
        request.addBodyParameter(OAuthConstants.CODE, verifier.getValue());
        request.addBodyParameter(OAuthConstants.REDIRECT_URI, config.getCallback());
        request.addBodyParameter(GRANT_TYPE, GRANT_TYPE_AUTHORIZATION_CODE);
        break;
    case GET:
    default:
        request.addQuerystringParameter(OAuthConstants.CLIENT_ID, config.getApiKey());
        request.addQuerystringParameter(OAuthConstants.CLIENT_SECRET, config.getApiSecret());
        request.addQuerystringParameter(OAuthConstants.CODE, verifier.getValue());
        request.addQuerystringParameter(OAuthConstants.REDIRECT_URI, config.getCallback());
        if(config.hasScope()) request.addQuerystringParameter(OAuthConstants.SCOPE, config.getScope());
    }
    Response response = request.send();
    return api.getAccessTokenExtractor().extract(response.getBody());
}
 
Example 2
Source File: HubicOAuth20ServiceImpl.java    From swift-explorer with Apache License 2.0 6 votes vote down vote up
public Token refreshAccessToken (Token expiredToken)
{
	if (expiredToken == null)
		return null ;
	
	OAuthRequest request = new OAuthRequest(api.getAccessTokenVerb(), api.getAccessTokenEndpoint());
	
	String authenticationCode = config.getApiKey() + ":" + config.getApiSecret() ;
	byte[] bytesEncodedAuthenticationCode = Base64.encodeBase64(authenticationCode.getBytes()); 
	request.addHeader ("Authorization", "Basic " + bytesEncodedAuthenticationCode) ;
	
	String charset = "UTF-8";
	
	request.setCharset(charset);
	request.setFollowRedirects(false);
	
	AccessToken at = new HubicTokenExtractorImpl ().getAccessToken(expiredToken.getRawResponse()) ;
	
	try
	{
		request.addBodyParameter("refresh_token", at.getRefreshToken());
		//request.addBodyParameter("refresh_token", URLEncoder.encode(at.getRefreshToken(), charset));
		request.addBodyParameter("grant_type", "refresh_token");
		request.addBodyParameter(OAuthConstants.CLIENT_ID, URLEncoder.encode(config.getApiKey(), charset));
		request.addBodyParameter(OAuthConstants.CLIENT_SECRET, URLEncoder.encode(config.getApiSecret(), charset));
	} 
	catch (UnsupportedEncodingException e) 
	{			
		logger.error("Error occurred while refreshing the access token", e);
	}
	
	Response response = request.send();
	Token newToken = api.getAccessTokenExtractor().extract(response.getBody());		
	// We need to keep the initial RowResponse because it contains the refresh token
	return new Token (newToken.getToken(), newToken.getSecret(), expiredToken.getRawResponse()) ;
}
 
Example 3
Source File: WeiXinOAuth20ServiceImpl.java    From cas4.0.x-server-wechat with Apache License 2.0 5 votes vote down vote up
/**
 * 获取account_token的http请求参数添加
 */
@Override
public Token getAccessToken(final Token requestToken, final Verifier verifier) {
    final OAuthRequest request = new ProxyOAuthRequest(this.api.getAccessTokenVerb(),
            this.api.getAccessTokenEndpoint(), this.connectTimeout,
            this.readTimeout, this.proxyHost, this.proxyPort);
    request.addBodyParameter("appid", this.config.getApiKey());
    request.addBodyParameter("secret", this.config.getApiSecret());
    request.addBodyParameter(OAuthConstants.CODE, verifier.getValue());
    request.addBodyParameter(OAuthConstants.REDIRECT_URI, this.config.getCallback());
    request.addBodyParameter("grant_type", "authorization_code");
    final Response response = request.send();
    return this.api.getAccessTokenExtractor().extract(response.getBody());
}
 
Example 4
Source File: HubicOAuth20ServiceImpl.java    From swift-explorer with Apache License 2.0 5 votes vote down vote up
@Override
public Token getAccessToken(Token requestToken, Verifier verifier) {

	OAuthRequest request = new OAuthRequest(api.getAccessTokenVerb(), api.getAccessTokenEndpoint());
	
	String authenticationCode = config.getApiKey() + ":" + config.getApiSecret() ;
	byte[] bytesEncodedAuthenticationCode = Base64.encodeBase64(authenticationCode.getBytes()); 
	request.addHeader ("Authorization", "Basic " + bytesEncodedAuthenticationCode) ;
	
	String charset = "UTF-8";
	
	request.setCharset(charset);
	request.setFollowRedirects(false);
	
	try
	{
		request.addBodyParameter(OAuthConstants.CODE, URLEncoder.encode(verifier.getValue(), charset));
		request.addBodyParameter(OAuthConstants.REDIRECT_URI, URLEncoder.encode(config.getCallback(), charset));
		request.addBodyParameter("grant_type", "authorization_code");
		request.addBodyParameter(OAuthConstants.CLIENT_ID, URLEncoder.encode(config.getApiKey(), charset));
		request.addBodyParameter(OAuthConstants.CLIENT_SECRET, URLEncoder.encode(config.getApiSecret(), charset));
	} 
	catch (UnsupportedEncodingException e) 
	{
		logger.error("Error occurred while getting the access token", e);
	}
	
	Response response = request.send();
	return api.getAccessTokenExtractor().extract(response.getBody());
}
 
Example 5
Source File: XeroClient.java    From xero-java-client with Apache License 2.0 5 votes vote down vote up
protected com.connectifier.xeroclient.models.Response put(String endPoint, JAXBElement<?> object) {
  OAuthRequest request = new OAuthRequest(Verb.PUT, BASE_URL + endPoint);
  String contents = marshallRequest(object);
  request.setCharset("UTF-8");
  request.addBodyParameter("xml", contents);
  service.signRequest(token, request);
  Response response = request.send();
  if (response.getCode() != 200) {
    throw newApiException(response);
  }
  return unmarshallResponse(response.getBody(), com.connectifier.xeroclient.models.Response.class);
}
 
Example 6
Source File: XeroClient.java    From xero-java-client with Apache License 2.0 5 votes vote down vote up
protected com.connectifier.xeroclient.models.Response post(String endPoint, JAXBElement<?> object) {
  OAuthRequest request = new OAuthRequest(Verb.POST, BASE_URL + endPoint);
  String contents = marshallRequest(object);
  request.setCharset("UTF-8");
  request.addBodyParameter("xml", contents);
  service.signRequest(token, request);
  Response response = request.send();
  if (response.getCode() != 200) {
    throw newApiException(response);
  }
  return unmarshallResponse(response.getBody(), com.connectifier.xeroclient.models.Response.class);
}
 
Example 7
Source File: RequestBuilder.java    From jumblr with Apache License 2.0 5 votes vote down vote up
private OAuthRequest constructXAuthPost(String email, String password) {
    OAuthRequest request = new OAuthRequest(Verb.POST, xauthEndpoint);
    request.addBodyParameter("x_auth_username", email);
    request.addBodyParameter("x_auth_password", password);
    request.addBodyParameter("x_auth_mode", "client_auth");
    return request;
}
 
Example 8
Source File: RequestBuilder.java    From jumblr with Apache License 2.0 5 votes vote down vote up
private OAuthRequest constructPost(String path, Map<String, ?> bodyMap) {
    String url = "https://" + hostname + "/v2" + path;
    OAuthRequest request = new OAuthRequest(Verb.POST, url);

    for (Map.Entry<String, ?> entry : bodyMap.entrySet()) {
    	String key = entry.getKey();
    	Object value = entry.getValue();
    	if (value == null || value instanceof File) { continue; }
        request.addBodyParameter(key,value.toString());
    }
    request.addHeader("User-Agent", "jumblr/" + this.version);

    return request;
}
 
Example 9
Source File: SmugMugInterface.java    From data-transfer-project with Apache License 2.0 4 votes vote down vote up
private <T> T postRequest(
    String url,
    Map<String, String> contentParams,
    @Nullable byte[] contentBytes,
    Map<String, String> smugMugHeaders,
    TypeReference<T> typeReference)
    throws IOException {

  String fullUrl = url;
  if (!fullUrl.contains("://")) {
    fullUrl = BASE_URL + url;
  }
  OAuthRequest request = new OAuthRequest(Verb.POST, fullUrl);

  // Add payload
  if (contentBytes != null) {
    request.addPayload(contentBytes);
  }

  // Add body params
  for (Entry<String, String> param : contentParams.entrySet()) {
    request.addBodyParameter(param.getKey(), param.getValue());
  }

  // sign request before adding any of the headers since those shouldn't be included in the
  // signature
  oAuthService.signRequest(accessToken, request);

  // Add headers
  for (Entry<String, String> header : smugMugHeaders.entrySet()) {
    request.addHeader(header.getKey(), header.getValue());
  }
  // add accept and content type headers so the response comes back in json and not html
  request.addHeader(HttpHeaders.ACCEPT, "application/json");

  Response response = request.send();
  if (response.getCode() < 200 || response.getCode() >= 300) {
    if (response.getCode() == 400) {
      throw new IOException(
          String.format(
              "Error occurred in request for %s, code: %s, message: %s, request: %s, bodyParams: %s, payload: %s",
              fullUrl,
              response.getCode(),
              response.getMessage(),
              request,
              request.getBodyParams(),
              request.getBodyContents()));
    }
    throw new IOException(
        String.format(
            "Error occurred in request for %s, code: %s, message: %s",
            fullUrl, response.getCode(), response.getMessage()));
  }
  return mapper.readValue(response.getBody(), typeReference);
}