我想用 Play 的 WS api 调用 Mailgun 服务。Mailgun 需要为身份验证发送 API 密钥,并且根据他们的“球衣”客户端示例,他们将此 API 密钥指定为客户端的“HTTPBasicAuthFilter”,如下所示:
public static ClientResponse SendSimpleMessage() {
Client client = Client.create();
client.addFilter(new HTTPBasicAuthFilter("api",
"key-3ax6xnjp29jd6fds4gc373sgvjxteol0"));
WebResource webResource =
client.resource("https://api.mailgun.net/v2/samples.mailgun.org" +
"/messages");
MultivaluedMapImpl formData = new MultivaluedMapImpl();
formData.add("from", "Excited User <me@samples.mailgun.org>");
formData.add("to", "bar@example.com");
formData.add("to", "baz@example.com");
formData.add("subject", "Hello");
formData.add("text", "Testing some Mailgun awesomness!");
return webResource.type(MediaType.APPLICATION_FORM_URLENCODED).
post(ClientResponse.class, formData);
}
如何使用 Play 的 WS api 做同样的事情?