我们正在开发CoSign Signature API应用。我们正在使用7.1 documentation.
如文档中所述,要处理“CoSign签名”,我们需要使用ARX ROOT证书与CoSign设备建立SSL会话。
请帮助我们获取此证书。
另外请为我们提供相同的测试网址。如果您能为我们提供一些使用此API与 java
的示例,那就太棒了答案 0 :(得分:1)
首先请注意,可以使用较新版本的文档 - CoSign Signature API v7.2。
Here您可以找到有关如何下载根CA证书的说明。
我们的DevPortal将很快更新更多代码示例。同时,这是Java中的基本示例代码,演示了如何使用CoSign Signature API对PDF进行签名:
public static byte[] SignPDF(byte[] fileBuffer) throws Exception {
byte[] signedFileBuffer = null;
String baseUrl = "https://prime.cosigntrial.com:8081/sapiws";
CloseableHttpClient httpclient = HttpClients.createDefault();
try {
String base64Data = new String(Base64.encodeBase64(fileBuffer));
// Build request body (JSON formatted)
JSONObject json = new JSONObject();
json.put("Username", "{username}");
json.put("password", "{password}");
json.put("FileData", base64Data);
json.put("FileType", "pdf");
json.put("Page", -1);
json.put("X", 145);
json.put("Y", 125);
json.put("Width", 160);
json.put("Height", 45);
StringEntity stringEntity = new StringEntity(json.toString());
HttpPost httpPost = new HttpPost(baseUrl + "/CreateSign" );
// Set Content-Type request header
httpPost.addHeader("content-type", "application/json");
// Add request body
httpPost.setEntity(stringEntity);
// Send the request
CloseableHttpResponse httpResponse = httpclient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
InputStream inputStream = httpEntity.getContent();
String response = IOUtils.toString(inputStream, "UTF-8");
// Parse JSON formatted response and fetch signed content on success
JSONObject responseJson = new JSONObject(response);
if (responseJson.getBoolean("Success")) {
String signedFileBase64 = responseJson.getJSONObject("Data").getString("SignedFileData");
signedFileBuffer = Base64.decodeBase64(signedFileBase64);
}
} finally {
if(httpclient != null)
httpclient.close();
}
return signedFileBuffer;
}