易宝绑卡创建信用卡信息程序

light d4c0cd5e1c 易宝信用卡信息创建 5 days ago
BankCardBean.class d4c0cd5e1c 易宝信用卡信息创建 5 days ago
BankCardBean.java d4c0cd5e1c 易宝信用卡信息创建 5 days ago
CardApiServer.class d4c0cd5e1c 易宝信用卡信息创建 5 days ago
CardApiServer.java d4c0cd5e1c 易宝信用卡信息创建 5 days ago
Dockerfile d4c0cd5e1c 易宝信用卡信息创建 5 days ago
README.md d4c0cd5e1c 易宝信用卡信息创建 5 days ago
VirCardNoUtils.java d4c0cd5e1c 易宝信用卡信息创建 5 days ago
docker-deploy.sh d4c0cd5e1c 易宝信用卡信息创建 5 days ago
start-server.sh d4c0cd5e1c 易宝信用卡信息创建 5 days ago
test-api.sh d4c0cd5e1c 易宝信用卡信息创建 5 days ago

README.md

信用卡生成 API

一个轻量级的 REST API 服务,用于生成随机的测试用信用卡信息。

功能特性

  • ✅ 生成随机信用卡号(16位)
  • ✅ 生成 CVV 安全码(3位)
  • ✅ 生成有效期(MM/YY 格式)
  • ✅ 随机银行名称(建设、工商、农业、中国、招商、广发)
  • ✅ 生成持卡人姓名(中文)
  • ✅ 生成性别
  • ✅ 生成身份证号(18位)

快速开始

方式一:本地运行(推荐,无需 Docker)

1. 启动服务器

bash start-server.sh

2. 测试 API

# 使用测试脚本
bash test-api.sh

# 或使用 curl
curl http://localhost:8666/api/card

# 或在浏览器访问
http://localhost:8666/api/card

3. 停止服务器

pkill -f CardApiServer

方式二:Docker 部署

前提条件: 已安装 Docker

使用 Docker Compose(推荐)

# 一键部署
bash docker-compose-deploy.sh

# 或手动执行
docker-compose up -d --build

使用 Docker 命令

# 一键部署
bash docker-deploy.sh

# 或手动执行
docker build -t bankcard-api .
docker run -d -p 8666:8666 --name bankcard-api bankcard-api

Docker 管理命令

# 查看日志
docker logs -f bankcard-api

# 停止服务
docker stop bankcard-api

# 重启服务
docker restart bankcard-api

# 删除容器
docker rm -f bankcard-api

# 使用 Docker Compose
docker-compose logs -f      # 查看日志
docker-compose down         # 停止服务
docker-compose restart      # 重启服务

API 接口

获取信用卡信息

请求:

GET http://localhost:8666/api/card

响应示例:

{
  "cardNo": "6227071234567890",
  "bankId": "CCB",
  "cvv": "123",
  "bankName": "建设银行",
  "validityPeriod": "05/27",
  "holderName": "张伟",
  "gender": "男",
  "holderIdCardNo": "110101199001011234"
}

项目结构

.
├── BankCardBean.java          # 数据模型
├── VirCardNoUtils.java        # 工具类(生成随机信息)
├── CardApiServer.java         # HTTP 服务器
├── Dockerfile                 # Docker 镜像配置
├── docker-compose.yml         # Docker Compose 配置
├── .dockerignore              # Docker 忽略文件
├── start-server.sh            # 本地启动脚本
├── docker-deploy.sh           # Docker 部署脚本
├── docker-compose-deploy.sh   # Docker Compose 部署脚本
├── test-api.sh                # API 测试脚本
└── README.md                  # 本文档

技术栈

  • Java 8+
  • Java 内置 HTTP 服务器 (com.sun.net.httpserver)
  • 零依赖,无需 Maven 或 Spring Boot

支持的银行

  • 建设银行 (CCB)
  • 工商银行 (ICBC)
  • 农业银行 (ABC)
  • 中国银行 (BOC)
  • 招商银行 (CMBCHINA)
  • 广发银行 (GDB)

常见问题

Q: 如何修改端口?

A:

  • 本地运行:编辑 CardApiServer.java,修改端口号
  • Docker 运行:修改 docker-compose.yml 中的端口映射

    // CardApiServer.java
    HttpServer server = HttpServer.create(new InetSocketAddress(9999), 0);
    
    # docker-compose.yml
    ports:
    - "9999:8666"  # 主机端口:容器端口
    

Q: 如何后台运行?

A:

  • 本地运行:nohup java CardApiServer > server.log 2>&1 &
  • Docker 运行:默认就是后台运行(-d 参数)

Q: 如何查看运行状态?

A:

  • 本地运行:ps aux | grep CardApiServer
  • Docker 运行:docker ps | grep bankcard-api

Q: Docker 构建失败怎么办?

A: 如果遇到网络问题无法拉取镜像,可以:

  1. 配置 Docker 镜像加速器(推荐)
  2. 使用本地运行方式(bash start-server.sh)

配置镜像加速器(macOS):

  • Docker Desktop → Settings → Docker Engine
  • 添加以下配置:

    {
    "registry-mirrors": [
    "https://docker.mirrors.ustc.edu.cn",
    "https://registry.docker-cn.com"
    ]
    }
    

注意事项

⚠️ 重要提示: 此工具生成的信用卡信息仅供开发测试使用,请勿用于任何非法用途。

License

仅供学习和测试使用。