本文為您提供了Java語言版本的充值接口接口對接DEMO示例
import java.net.URI;
import java.net.URLEncoder;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.nio.charset.StandardCharsets;
import java.io.UnsupportedEncodingException;
import java.util.HashMap;
import java.util.Map;
import java.util.*;
public class test
{
public static void main(String args[])
{
String url = "https://api.ihuyi.com/f/giftcard?action=buy";
Map<String, String> headers = new HashMap<>();
headers.put("Content-Type", "application/x-www-form-urlencoded;charset=UTF-8");
HashMap<String, String> bodyArr = new HashMap<>();
bodyArr.put("username", "123456"); //API ID
bodyArr.put("mobile", "130*******"); //手機號
bodyArr.put("orderid", "DD20253995959"); //商家訂單ID
bodyArr.put("productid", "k111-1"); //產品ID
bodyArr.put("buynum", "1"); //購買數(shù)量-固定數(shù)量1
bodyArr.put("timestamp", "20240321150546"); //時間戳格式如:yyyyMMddHHmmss 允許 10分鐘統(tǒng)一以東 8 時間
bodyArr.put("sign", "81ed625f338277f1bd7f27b9339e302c"); //簽名
String queryString = convertToQueryString(bodyArr);
try {
Map<String, Object> response = sendRequest(url, headers, queryString, "POST");
// 打印響應
System.out.printf("狀態(tài)碼: %s%n", response.get("status"));
System.out.printf("響應內容: %s%n", response.get("body"));
} catch (Exception e) {
e.printStackTrace();
}
}
public static Map<String, Object> sendRequest(String url, Map<String, String> headers, String queryString, String method) throws Exception {
HttpRequest.Builder requestBuilder = HttpRequest.newBuilder()
.uri(URI.create(url))
.method(method, queryString.isEmpty() ?
HttpRequest.BodyPublishers.noBody() :
HttpRequest.BodyPublishers.ofString(queryString, StandardCharsets.UTF_8));
headers.forEach(requestBuilder::header);
HttpClient httpClient = HttpClient.newBuilder().build();
HttpResponse<String> response = httpClient.send(
requestBuilder.build(),
HttpResponse.BodyHandlers.ofString(StandardCharsets.UTF_8)
);
Map<String, Object> result = new HashMap<>();
result.put("status", response.statusCode());
result.put("body", response.body());
return result;
}
public static String convertToQueryString(HashMap<String, String> map) {
StringBuilder queryString = new StringBuilder();
for (Map.Entry<String, String> entry : map.entrySet()) {
String encodedKey = URLEncoder.encode(entry.getKey(), StandardCharsets.UTF_8);
String encodedValue = URLEncoder.encode(entry.getValue(), StandardCharsets.UTF_8);
if (queryString.length() > 0) {
queryString.append("&");
}
queryString.append(encodedKey).append("=").append(encodedValue);
}
return queryString.toString();
}
}
國內專業(yè)互聯(lián)網(wǎng)團隊
21年行業(yè)經驗
7x24小時售后支持
豐富的行業(yè)經驗
Copyright ? 2004-2025 上海思銳信息技術有限公司 All rights reserved. 滬ICP備07035915號-15 電信增值業(yè)務許可證:B2-20160082
服務熱線:
4008 808 898
服務熱線(工作時間):
4008 808 898
業(yè)務咨詢(非工作時間):
售后咨詢(非工作時間):