使用 bash 的 REST API 请求示例

最后更新时间: 2025年3月31日

简介

使用 Kraken REST API 接口以及 Bourne Again shell (bash) 和一些相关命令(openssl、base64、xxd 等)可以成为与 Kraken 市场交互的便捷高效解决方案(尽管与编译代码相比,它不是最快的实现)。

Bash 和所需的命令在大多数 UNIX、Linux 和 macOS 系统上都已预装,并且可以轻松安装在 Windows 和其他系统上,因此无需使用任何额外的第三方 API 工具或库即可获得所有必需的软件。

使用纯文本编辑器(甚至是像 vi 这样的老式编辑器)和几行代码,就可以访问公共市场数据和私人账户数据,还可以在 Kraken 市场上进行下单/取消订单。

示例代码

以下代码展示了调用 REST API Balance 端点的 bash 代码实现:

#!/usr/bin/env bash

# 从账户管理网站复制的 API 公钥/私钥

api_key='gxTXpC4Ag/N0QPKlYnRhL1qVB2G/HZV1eB2drl7eOXga30dEKoB+EUMs'
api_private='62kRfRX7BI8G8T/jl7clnZ+vSfJt7YmQN23JQkJfHCE6oxecJX4fN4i2RitmRhyFzfJ4efKy2yCo4H068rfv0A=='

# API 变量(URL、端点、随机数等)

api_host='https://api.kraken.com'
api_endpoint='/0/private/Balance'
api_nonce=`date +%s`
api_post="nonce=$api_nonce"

# 认证算法(SHA256 和 HMAC SHA512)

api_private_hex=`echo -n $api_private base64 -d xxd -p tr -d "\n"`
echo -n $api_endpoint > kapi_bash.bin
echo -n $api_nonce$api_post openssl dgst -sha256 -binary >> kapi_bash.bin
api_sign=`cat kapi_bash.bin openssl dgst -binary -sha512 -mac HMAC -macopt hexkey:$api_private_hex base64`

# HTTP 请求 (POST)

curl --header "API-Key: $api_key" --header "API-Sign: $api_sign" --data $api_post $api_host$api_endpoint

匹配的代码也可以 下载(作为 kapi_bash.sh 文件)

进一步使用/开发

要检索您自己的账户余额,示例 API 密钥应替换为您自己 Kraken 账户的 API 密钥,并且只需修改 api_endpoint 变量和 api_post 变量(如果需要)即可启用其他 API 端点。

需要更多帮助吗?