گاهی اوقات نیاز داریم تا یک وب سرویس را در برنامه خود فرخوانی کنیم.
برای فراخوانی یک سرویس rest به صورت زیر عمل می کنیم:
public <T> T call(Object requestData, Class<T> classOfT) throws Throwable {
T result = null;
try {
HttpPost httpPost = new HttpPost(url);
httpPost.setHeader "Content-Type", "application/json; charset=UTF-8");
httpPost.setHeader("Accept", "application/json");
Header[] headers = new Header[httpPost.getAllHeaders().length];
for (int i = 0; i < httpPost.getAllHeaders().length; i++)
if (!httpPost.getAllHeaders()[i].getName().equalsIgnoreCase("authorization"))
headers[i] = httpPost.getAllHeaders()[i];
Date timeStamp = new Date();
byte[] sign = signer.sign(gson.toJson(new Object[]{timeStamp,
requestData}).getBytes());
httpPost.setHeader("sign", Base64.encodeBase64String(sign));
httpPost.setHeader("timestamp", gson.toJson(timeStamp));
- فرشته حقیقی 5 سال قبل پاسخ داد
- شما باید برای ارسال دیدگاه وارد شوید