Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package com.mycompany.testproject;
- import java.io.IOException;
- import java.io.UnsupportedEncodingException;
- import javax.ws.rs.client.ClientBuilder;
- import javax.ws.rs.client.ClientRequestContext;
- import javax.ws.rs.client.ClientRequestFilter;
- import javax.ws.rs.client.Entity;
- import javax.ws.rs.client.WebTarget;
- import javax.ws.rs.core.MediaType;
- import javax.ws.rs.core.MultivaluedHashMap;
- import javax.ws.rs.core.MultivaluedMap;
- import javax.xml.bind.DatatypeConverter;
- class Authenticator implements ClientRequestFilter {
- private final String user;
- private final String password;
- public Authenticator(String user, String password) {
- this.user = user;
- this.password = password;
- }
- @Override
- public void filter(ClientRequestContext requestContext) throws IOException {
- MultivaluedMap<String, Object> headers = requestContext.getHeaders();
- final String basicAuthentication = getBasicAuthentication();
- headers.add("Authorization", basicAuthentication);
- }
- private String getBasicAuthentication() {
- String token = this.user + ":" + this.password;
- try {
- return "BASIC " + DatatypeConverter.printBase64Binary(token.getBytes("UTF-8"));
- } catch (UnsupportedEncodingException ex) {
- throw new IllegalStateException("Cannot encode with UTF-8", ex);
- }
- }
- }
- public class App {
- public static void main(String[] args) throws Exception {
- WebTarget path = ClientBuilder.newClient()
- .target("https://api.mailgun.net/v3/samples.mailgun.org/messages")
- .register(new Authenticator("api", "key-3ax6xnjp29jd6fds4gc373sgvjxteol0"));
- MultivaluedMap<String, String> formData = new MultivaluedHashMap<>();
- formData.add("from", "Formularz Kontaktowy <kontakt@reservly.com>");
- formData.add("to", "tomaszdudzik.web@gmail.com");
- formData.add("subject", "Temat wiadomości");
- formData.add("text", "Treść wiadomości");
- path.request(MediaType.APPLICATION_FORM_URLENCODED).post(Entity.form(formData));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement