我尝试运行以下代码来访问REST API,这个REST API通过hawk身份验证进行保护。 我想要实现的是这个POST请求服务器将返回AppTicket,这个AppTicket将用于后续的API调用中进行测试。 但问题是我收到了错误的请求错误消息。 我正在使用带有java的jersey客户端。
String payload= "{\"username\":\"test@domain.com\",\"password\":\"Password\",\"applnName\":\"my APP AngularJS\",\"applnType\":\"Web Application\",\"fingerprint\":\"1234314y31387ddhsks\",\"fpData\":\"fdata11\"}";
Client restClient = Client.create();
WebResource request = restClient.resource("https://test.server.com/api/login");
ClientResponse response2 = request.type("application/json; charset=UTF-8").post(ClientResponse.class, payload);
System.out.println(response2);
这是基于RAML的API,其POST调用的RAML定义如下,
属性 username:required(string - minLength:3 - maxLength:100) 组织提供的有效电子邮件地址
示例:
user@example.com 密码:必填(字符串) 例如:
取值 ngPa55w RD 指纹:(字符串) 用于登录的设备的唯一标识符
fpData :(数组) 用于计算指纹的参数列表
applnType:required(Web应用程序,Android应用程序,iOS应用程序之一) 用户从
登录的应用程序类型applnName:required(Web APP AngularJS,Mobile Android,Mobile NativeScript之一)
请您帮我解决此代码中的问题。