文档中心

为您提供清晰、准确、易于理解的API文档,帮助开发人员快速上手、理解和使用产品。

调用次数:75 次

货币换算

正常 按量计费全站会员免费包年包月次数包

人民币、美元、比特币、泰达币、金、银等300多种货币的实时汇率查询(以“updatetime”更新时间的字段为准),提供汇率转换、单个货币对应的热门货币汇率行情等API。此汇率为综合汇率,接口数据来源于公开的信息发布平台,并不对发布的金融服务信息的真实性及准确性负责,且不提供金融投资服务。

更新日期
2024-05-14
调用权限
正常
每日限制
10000次
请求频率限制
1秒1次
参考价格
NAN元/次

计费控制优先级(按已开通的类型进行):

全站会员->单独包月->次数包->点数计费->账户余额->免费额度

按量计费:

支持点数余额抵扣,每次扣除点数:0 点/次 约 0 元/次

全站会员:

全站会员有效期内,可免费使用本产品。

包年包月:

包月价格 包季价格 包年价格
¥ 0.00 约 0 元/天 ¥ 0.00 约 0 元/天 ¥ 0.00 约 0 元/天

次数包:

额度 价格 有效期
(次) ¥ 低至NAN/次

免费额度:

总免费额度 每月免费额度 每日免费额度
0 (次) 0 (次) 包含在总免费额度 0 (次) 包含在总免费额度

请求限制:

免费/测试用户请求频率限制 请求频率总限制 全站会员请求频率限制 每日请求次数总限制
1秒1次 每个免费用户的QPS总限制 1秒1次 每个用户QPS总限制 1秒10次 每个全站会员用户的QPS总限制 10000 (次) 每个用户每日请求总次数

其他准入要求:

  • 账户余额/点数计费的用户,不限制每日请求次数和QPS
  • 次数包计费的用户,不限制每日请求次数和QPS
  • 接口地址:https://api.sansedou.vip/api/currency/query

    返回格式:application/json

    请求方式:HTTPGETPOST/JSON

    请求示例:

    请求HEADER:

    名称
    Content-Typeapplication/x-www-form-urlencoded;charset:utf-8;

    请求参数说明:

    名称必填类型示例值说明
    keystring35kj5jnlj53453kl5j43nj5接口密钥,在控制台->密钥管理查看
    quotestringCNY计价货币
    basestringUSD币种

    返回参数说明:

    名称类型说明
    codeint状态码
    msgstring状态信息
    datastring请求结果数据集
    exec_timefloat执行耗时
    user_ipstring客户端IP

    货币对应表:

    代号名称类型
    XAU贵金属
    XAG贵金属
    XPT贵金属
    CNY人民币法定货币
    USD美元法定货币
    HKD港币法定货币
    EUR欧元法定货币
    JPY日元法定货币
    SGD新加坡元法定货币
    AUD澳大利亚元法定货币
    GBP英镑法定货币
    CHF瑞士法郎法定货币
    ALL阿尔巴尼亚列克法定货币
    ARS阿根廷比索法定货币
    AWG阿鲁巴岛弗罗林法定货币
    AED阿联酋迪拉姆法定货币
    DZD阿尔及利亚第纳尔法定货币
    EGP埃及镑法定货币
    ETB埃塞俄比亚比尔法定货币
    MOP澳门币法定货币
    OMR阿曼里亚尔法定货币
    AZN阿塞拜疆马纳特法定货币
    AFN阿富汗尼法定货币
    AOA安哥拉宽扎法定货币
    BSD巴哈马元法定货币
    BHD巴林第纳尔法定货币
    BBD巴巴多斯元法定货币
    BZD伯利兹元法定货币
    BMD百慕大元法定货币
    BTN不丹努尔特鲁姆法定货币
    BOB玻利维亚诺法定货币
    BWP博茨瓦纳普拉法定货币
    BRL巴西雷亚尔法定货币
    BGN保加利亚列弗法定货币
    BIF布隆迪法郎法定货币
    ISK冰岛克朗法定货币
    PKR巴基斯坦卢比法定货币
    PAB巴拿马巴波亚法定货币
    PGK巴布亚新几内亚吉纳法定货币
    KPW朝鲜币法定货币
    DKK丹麦克朗法定货币
    DOP多米尼加比索法定货币
    XCD东加勒比元法定货币
    ERN厄立特里亚纳克法法定货币
    RUB俄罗斯卢布法定货币
    CVE佛得角埃斯库多法定货币
    FJD斐济元法定货币
    PHP菲律宾比索法定货币
    COP哥伦比亚比索法定货币
    CRC哥斯达黎加科朗法定货币
    CUP古巴比索法定货币
    CUC古巴比索法定货币
    GMD冈比亚达拉西法定货币
    GYD圭亚那元法定货币
    GEL格鲁吉亚拉里法定货币
    CDF刚果法郎法定货币
    KRW韩元法定货币
    KZT哈萨克斯坦坚戈法定货币
    CAD加拿大元法定货币
    CZK捷克克朗法定货币
    DJF吉布提法郎法定货币
    GNF几内亚法郎法定货币
    KHR柬埔寨瑞尔法定货币
    ZWL津巴布韦元法定货币
    GHS加纳塞地法定货币
    KGS吉尔吉斯斯坦索姆法定货币
    CNH离岸人民币法定货币
    LAK老挝新基普法定货币
    LBP黎巴嫩镑法定货币
    LSL莱索托洛蒂法定货币
    LRD利比里亚元法定货币
    LYD利比亚第纳尔法定货币
    RON罗马尼亚新列伊法定货币
    RWF卢旺达法郎法定货币
    BDT孟加拉国塔卡法定货币
    FKP福克兰群岛磅法定货币
    MKD马其顿第纳尔法定货币
    MWK马拉维克瓦查法定货币
    MYR马来西亚林吉特法定货币
    MVR马尔代夫拉菲亚法定货币
    MRU毛里塔尼亚乌吉亚法定货币
    MUR毛里求斯卢比法定货币
    MXN墨西哥比索法定货币
    MDL摩尔多瓦列伊法定货币
    MNT蒙古图格里克法定货币
    MAD摩洛哥迪拉姆法定货币
    MMK缅甸基亚特法定货币
    MGA马达加斯加阿里亚法定货币
    MZN莫桑比克梅蒂卡尔法定货币
    NAD纳米比亚元法定货币
    NPR尼泊尔卢比法定货币
    NIO尼加拉瓜科多巴法定货币
    NGN尼日利亚奈拉法定货币
    NOK挪威克朗法定货币
    ZAR南非兰特法定货币
    SEK瑞典克朗法定货币
    SVC萨尔瓦多科朗法定货币
    SAR沙特阿拉伯里亚尔法定货币
    SCR塞舌尔卢比法定货币
    SLL塞拉利昂利昂法定货币
    SBD所罗门群岛元法定货币
    SOS索马里先令法定货币
    SHP圣赫勒拿镑法定货币
    SDG苏丹镑法定货币
    SZL斯威士兰里兰吉尼法定货币
    WST萨摩亚塔拉法定货币
    SRD苏里南元法定货币
    RSD塞尔维亚第纳尔法定货币
    STN圣多美杜布拉法定货币
    THB泰铢法定货币
    TRY土耳其里拉法定货币
    TZS坦桑尼亚先令法定货币
    TOP汤加帕安卡法定货币
    TTD特立尼达多巴哥元法定货币
    TND突尼斯第纳尔法定货币
    XPF太平洋法郎法定货币
    TJS塔吉克斯坦索莫尼法定货币
    TMT土库曼斯坦马纳特法定货币
    BND文莱元法定货币
    GTQ危地马拉格查尔法定货币
    UGX乌干达先令法定货币
    UAH乌克兰格里夫纳法定货币
    UYU乌拉圭新比索法定货币
    VUV瓦努阿图瓦图法定货币
    UZS乌兹别克斯坦索姆法定货币
    HUF匈牙利福林法定货币
    NZD新西兰元法定货币
    SYP叙利亚镑法定货币
    TWD新台币法定货币
    IDR印度尼西亚卢比法定货币
    INR印度卢比法定货币
    IRR伊朗里亚尔法定货币
    IQD伊拉克第纳尔法定货币
    ILS以色列新克尔法定货币
    JMD牙买加元法定货币
    JOD约旦第纳尔法定货币
    VND越南盾法定货币
    YER也门里亚尔法定货币
    AMD亚美尼亚德拉姆法定货币
    CLP智利比索法定货币
    GIP直布罗陀镑法定货币
    XAF中非法郎法定货币
    ZMW赞比亚克瓦查法定货币
    BYN新白俄罗斯卢布法定货币
    HRK克罗地亚库纳法定货币
    KYD开曼群岛元法定货币
    KMF科摩罗法郎法定货币
    KWD科威特第纳尔法定货币
    QAR卡塔尔里亚尔法定货币
    BTC比特币加密货币
    USDT泰达币加密货币
    ETH以太币加密货币
    ACTA链加密货币
    ADA艾达币加密货币
    ELFaelf加密货币
    EMC2锿币加密货币
    REPAugur加密货币
    SOCAllSportsCoin加密货币
    AE阿姨币加密货币
    ARKARK币加密货币
    ABBC阿里巴巴币加密货币
    ARDR阿朵币加密货币
    AIONAION币加密货币
    APL阿波罗加密货币
    AXSAXS币加密货币
    AAVEAAVE币加密货币
    BCCBitConnect加密货币
    BCD比特币钻石加密货币
    BCH比特币现金加密货币
    BNB币安币加密货币
    ONT本体币加密货币
    BTG比特币黄金加密货币
    BTM比原币加密货币
    BTS比特股加密货币
    TRX波场币加密货币
    WAVES波币加密货币
    BTCP比特币私人加密货币
    B2GB2G币加密货币
    PLC铂金币加密货币
    BOS博士链加密货币
    BCOBCO币加密货币
    CLAM贝壳币加密货币
    BSV比特币SV加密货币
    DOT波卡币加密货币
    CMTCyberMiles加密货币
    CTXCCortex加密货币
    CVCCivic加密货币
    HSR超级现金加密货币
    CNXCNX币加密货币
    UNO超导币加密货币
    SHIB柴犬币加密货币
    CELOCelo币加密货币
    COMPComp币加密货币
    CAKECake币加密货币
    DASH达世币加密货币
    DTADTA币加密货币
    ZEC大零币加密货币
    DCR德赛币加密货币
    RVN渡鸦币加密货币
    PPC点点币加密货币
    DOGE狗狗币加密货币
    FCT公证币加密货币
    GNTGolem加密货币
    GXC公信宝加密货币
    GRINGRIN币加密货币
    GOGO币加密货币
    HYC鸿运币加密货币
    ICXiCON加密货币
    IOSTIOST加密货币
    DGB极特币加密货币
    MIOTAIOTA加密货币
    EMC崛起币加密货币
    KNC可汗币加密货币
    KMD科莫多币加密货币
    HT火币积分加密货币
    XCP合约币加密货币
    XLM恒星币加密货币
    HCHC币加密货币
    LET林可爱加密货币
    LTC莱特币加密货币
    QTUM量子币加密货币
    LEO力奥币加密货币
    XZC零币加密货币
    VTC绿币加密货币
    PZM棱镜加密货币
    QRL量子抗性加密货币
    SDA六域链加密货币
    MDSMediShares加密货币
    MONA萌奈币加密货币
    MTHMonetha加密货币
    XMR门罗币加密货币
    MHC美恒币加密货币
    MOAC墨客加密货币
    MANAMana币加密货币
    MATICMATIC币加密货币
    NEO小蚁币加密货币
    OMG嫩模币加密货币
    NRGNRG币加密货币
    NULSNULS币加密货币
    NXSNXS币加密货币
    NEBLNEBL币加密货币
    NAV纳瓦霍币加密货币
    NSD纳斯达币加密货币
    OCNOcoin加密货币
    PIVX普维币加密货币
    PAI拍币加密货币
    PARTPART币加密货币
    QASHQASH加密货币
    BLOCK区块网络加密货币
    XRP瑞波币加密货币
    ETP熵币加密货币
    SALTSALT加密货币
    SANSantiment Network Token加密货币
    SMTSmartMesh加密货币
    SNTStatus加密货币
    STEEM斯蒂姆币加密货币
    STORJStorj加密货币
    STRATSTRAT币加密货币
    SPHTX索菲亚TX加密货币
    GRS闪电币加密货币
    SUSHI寿司币加密货币
    TOMOTOMO币加密货币
    SKY天空币加密货币
    TPAYTPAY币加密货币
    UNIUNI币加密货币
    ITC万物链加密货币
    NXT未来币加密货币
    VET唯链加密货币
    WICC维基链加密货币
    RDD蜗牛币加密货币
    WAN玩家币加密货币
    WGRWGR币加密货币
    GASGas加密货币
    NAS星云币加密货币
    XEM新经币加密货币
    XTZXTZ币加密货币
    XVGXVG币加密货币
    SYS系统币加密货币
    NAS星云币加密货币
    ELA亦来云加密货币
    EOS柚子币加密货币
    ETC以太经典加密货币
    LSK应用链加密货币
    NANO源石币加密货币
    SC云储币加密货币
    ETN以利币加密货币
    ECA伊莱克加密货币
    NMC域名币加密货币
    ZILZilliqa加密货币
    BCN字节币加密货币
    ZENZEN币加密货币
    GBYTE字节雪球加密货币
    SMART智能现金加密货币

    返回示例:

    错误码类型说明
    403int没有权限
    400int参数传递不正确
    500int服务器内部错误
    
                                            <?php
    /**
     * API请求DEMO
     * 
     * 本demo支持常见的HTTP请求方法(GET/POST/PUT/DELETE等)
     */
    
     //基本配置
    $api_key = '你的接口密钥,登录控制台后在密钥管理页面申请';
    $secret_key = '';
    
    // API请求示例:
    try {
        $client = new ApiClient($api_key, $secret_key);
        $client->setTimeout(10);
        $client->setVerifySSL(false); // 关闭SSL验证
    
        // GET请求示例
        echo "=== 开始GET请求 ===\n";
        $response = $client->get('https://api.sansedou.vip/api/currency/query', [
            'key' => $api_key,
            'key2' => '其他参数'
        ]);
        print_r($response);
        //print_r($client->getLastRequestInfo());
        /* 
        // POST表单示例
        echo "\n=== 开始POST请求 ===\n";
        $response = $client->post('接口地址', [
            'key' => $api_key,
            'key2' => '其他参数'
        ]);
        print_r($response);
        print_r($client->getLastRequestInfo());
    
        // POST JSON示例
        echo "\n=== 开始POST JSON请求 ===\n";
        $response = $client->postJson('接口地址', [
            'key' => $api_key,
            'key2' => '其他参数'
        ]);
        print_r($response);
        print_r($client->getLastRequestInfo());
         */
    } catch (ApiClientException $e) {
        echo "API请求错误: " . $e->getMessage();
        if ($e->getCode() > 0) {
            echo " (HTTP状态码: " . $e->getCode() . ")";
        }
        print_r($client->getLastRequestInfo() ?? []);
    }
    
    /**
     * API客户端类
     * 
     * 提供了一个简单的HTTP API客户端实现,支持常见的HTTP请求方法(GET/POST/PUT/DELETE等)
     * 具有以下主要功能:
     * - 支持 API 密钥和签名认证
     * - 可配置请求超时和SSL验证
     * - 支持自定义请求头
     * - 支持表单和JSON格式的请求体
     * - 自动解析响应结果
     * - 提供详细的请求信息记录
     * 
     * 使用示例:
     * ```
     * $client = new ApiClient('https://api.example.com', 'api_key', 'secret_key');
     * $response = $client->get('/users', ['page' => 1]);
     * ```
     * 
     * @throws ApiClientException 当API请求失败时抛出异常
     */
    class ApiClient
    {
        private $apiKey;
        private $secretKey;
        private $timeout = 30;
        private $verifySSL = true;
        private $lastRequestInfo = [];
        private $defaultHeaders = [];
    
        /**
         * 构造函数
         * 
         * @param string $apiKey  API密钥(可选)
         * @param string $secretKey 签名密钥(可选)
         */
        public function __construct(string $apiKey = '', string $secretKey = '')
        {
            $this->apiKey = $apiKey;
            $this->secretKey = $secretKey;
        }
    
        /**
         * 设置请求超时时间(秒)
         */
        public function setTimeout(int $seconds): self
        {
            $this->timeout = $seconds;
            return $this;
        }
    
        /**
         * 设置是否验证SSL证书
         */
        public function setVerifySSL(bool $verify): self
        {
            $this->verifySSL = $verify;
            return $this;
        }
    
        /**
         * 添加默认请求头
         */
        public function addDefaultHeader(string $name, string $value): self
        {
            $this->defaultHeaders[$name] = $value;
            return $this;
        }
    
        /**
         * 发送GET请求
         * 
         * @param string $endpoint 接口端点
         * @param array  $query    查询参数
         * @param array  $headers  额外请求头
         */
        public function get(string $endpoint, array $query = [], array $headers = []): array
        {
            return $this->request('GET', $endpoint, [
                'query' => $query,
                'headers' => $headers
            ]);
        }
    
        /**
         * 发送POST请求(表单格式)
         * 
         * @param string $endpoint 接口端点
         * @param array  $data     POST数据
         * @param array  $headers  额外请求头
         */
        public function post(string $endpoint, array $data = [], array $headers = []): array
        {
            return $this->request('POST', $endpoint, [
                'form_data' => $data,
                'headers' => $headers
            ]);
        }
    
        /**
         * 发送POST请求(JSON格式)
         * 
         * @param string $endpoint 接口端点
         * @param array  $data     POST数据
         * @param array  $headers  额外请求头
         */
        public function postJson(string $endpoint, array $data = [], array $headers = []): array
        {
            return $this->request('POST', $endpoint, [
                'json' => $data,
                'headers' => array_merge(['Content-Type' => 'application/json'], $headers)
            ]);
        }
    
        /**
         * 发送PUT请求
         */
        public function put(string $endpoint, array $data = [], array $headers = []): array
        {
            return $this->request('PUT', $endpoint, [
                'json' => $data,
                'headers' => $headers
            ]);
        }
    
        /**
         * 发送DELETE请求
         */
        public function delete(string $endpoint, array $data = [], array $headers = []): array
        {
            return $this->request('DELETE', $endpoint, [
                'json' => $data,
                'headers' => $headers
            ]);
        }
    
        /**
         * 获取最后一次请求的详细信息
         */
        public function getLastRequestInfo(): array
        {
            return $this->lastRequestInfo;
        }
    
        /**
         * 基础请求方法
         */
        private function request(string $method, string $endpoint, array $options = []): array
        {
            // 初始化cURL
            $ch = curl_init();
            $url = ltrim($endpoint, '/');
    
            // 准备请求头
            $headers = $this->prepareHeaders($options['headers'] ?? []);
    
            // 处理查询参数
            if (!empty($options['query'])) {
                $url .= '?' . http_build_query($options['query']);
            }
    
            // 处理请求体
            $postData = null;
            if (isset($options['form_data'])) {
                $postData = http_build_query($options['form_data']);
                $headers[] = 'Content-Type: application/x-www-form-urlencoded';
            } elseif (isset($options['json'])) {
                $postData = json_encode($options['json']);
                $headers[] = 'Content-Type: application/json';
            }
    
            // 设置cURL选项
            curl_setopt_array($ch, [
                CURLOPT_URL => $url,
                CURLOPT_RETURNTRANSFER => true,
                CURLOPT_CUSTOMREQUEST => $method,
                CURLOPT_HTTPHEADER => $headers,
                CURLOPT_TIMEOUT => $this->timeout,
                CURLOPT_SSL_VERIFYPEER => $this->verifySSL,
                CURLOPT_SSL_VERIFYHOST => $this->verifySSL,
                CURLOPT_HEADER => true,
            ]);
    
            if ($method !== 'GET' && $postData !== null) {
                curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
            }
    
            // 执行请求
            $response = curl_exec($ch);
            $error = curl_error($ch);
            $info = $this->lastRequestInfo = curl_getinfo($ch);
            curl_close($ch);
    
            // 处理错误
            if ($error) {
                throw new ApiClientException("cURL请求失败: " . $error);
            }
    
            // 分离响应头和响应体
            $headerSize = $info['header_size'];
            $responseHeaders = substr($response, 0, $headerSize);
            $responseBody = substr($response, $headerSize);
    
            // 解析响应
            $result = json_decode($responseBody, true) ?? $responseBody;
    
            // 检查HTTP状态码
            if ($info['http_code'] >= 400) {
                $errorMsg = is_array($result) ? ($result['message'] ?? $responseBody) : $responseBody;
                throw new ApiClientException("API请求失败: " . $errorMsg, $info['http_code']);
            }
    
            return [
                'status' => $info['http_code'],
                'headers' => $this->parseHeaders($responseHeaders),
                'data' => $result
            ];
        }
    
        /**
         * 准备请求头(自动添加签名)
         */
        private function prepareHeaders(array $headers): array
        {
            // 合并默认头
            $headers = array_merge($this->defaultHeaders, $headers);
    
            // 添加签名头
            if ($this->apiKey && $this->secretKey) {
                $timestamp = time();
                $signString = "key={$this->apiKey}&timestamp={$timestamp}";
                $signature = hash_hmac('sha256', $signString, $this->secretKey);
    
                $headers['X-Api-Key'] = $this->apiKey;
                $headers['X-Api-Timestamp'] = $timestamp;
                $headers['X-Api-Sign'] = $signature;
            }
    
            // 转换为cURL格式
            $curlHeaders = [];
            foreach ($headers as $name => $value) {
                $curlHeaders[] = "$name: $value";
            }
    
            return $curlHeaders;
        }
    
        /**
         * 解析响应头
         */
        private function parseHeaders(string $headers): array
        {
            $parsed = [];
            foreach (explode("\r\n", $headers) as $i => $line) {
                if ($i === 0) {
                    $parsed['HTTP_CODE'] = $line;
                } else {
                    $parts = explode(': ', $line, 2);
                    if (count($parts) === 2) {
                        $parsed[$parts[0]] = $parts[1];
                    }
                }
            }
            return $parsed;
        }
    }
    
    class ApiClientException extends \Exception
    {
        // 自定义异常类
    }
    
    
    
    
    
    
    
    //jQuery-Ajax
    $.ajax({
    	url: 'https://api.sansedou.vip/api/currency/query',
    	data: {
    	//接口参数,一行一个,可按照接口文档-请求参数 的参数填写,或者直接复制开发工具下面的测试代码。
    		key: '你的接口密钥,登录控制台后在密钥管理页面申请',
    		参数名: '参数值',
    
    	},
    	type: 'GET', //请求协议(GET或POST),一般默认GET,部分接口需要POST请求,根据实际情况修改为POST即可。
    	dataType: 'json',
    	success: function(data) {
    		console.log(data); //请求成功,输出结果到控制台
    	},
    	timeout: 3000, //超时时间
    	error: function(data) {
    		console.log('请求失败'); //失败处理
    	}
    });
    
    
    
        
    子程序名 返回值类型 公开 备 注
    __启动窗口_创建完毕    
    ' 添加并使用《精易模块》
    Send_API ()
    子程序名 返回值类型 公开 备 注
    Send_API    
    变量名 类 型 静态 数组 备 注
    REQU_Data 文本型   提交字符串
    return 文本型   返回字符串
    API_URL 文本型   接口地址
    API_KEY 文本型   接口密钥
    API_URL = “https://api.sansedou.vip/api/currency/query”
    API_KEY = “你的接口密钥,登录控制台后在密钥管理页面申请”
    REQU_Data = "请求参数,根据接口文档的请求参数来拼接字符串(例a=a&b=b&c=c)"
    return = 编码_Utf8到Ansi (网页_访问 (API_URL + “?key=” + API_KEY + REQU_Data, , , , , “User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36”))
    输出调试文本 (return)
    
    import java.io.BufferedReader; 
    import java.io.InputStreamReader; 
    import java.net.HttpURLConnection; 
    import java.net.URL; 
     
    public class Test { 
        public static void main(String[] args) { 
            try { 
                URL url = new URL("https://api.sansedou.vip/api/currency/query?key=你的接口密钥,登录控制台后在密钥管理页面申请"); 
                HttpURLConnection connection = (HttpURLConnection)url.openConnection(); 
     
                // 设置请求方式
                connection.setRequestMethod("GET"); 
                connection.connect(); 
     
                // 获取响应码
                int responseCode = connection.getResponseCode(); 
                if (responseCode == HttpURLConnection.HTTP_OK) { 
                    BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream())); 
                    String line; 
                    while ((line = reader.readLine()) != null) { 
                        // 读取到的内容给line变量 
                        System.out.println(line); 
                    } 
                    reader.close(); 
                } 
            } catch (Exception e) { 
                e.printStackTrace(); 
            } 
        } 
    }
    
    
    
    package main
     
    import (
        "fmt"
        "io/ioutil"
        "net/http"
    )
     
    func main() {
        // 发起一个GET请求
        resp, err := http.Get("https://api.sansedou.vip/api/currency/query?key=你的接口密钥,登录控制台后在密钥管理页面申请")
        if err != nil {
            fmt.Println("http get error", err)
            return
        }
     
        // 读取响应结果
        result, err := ioutil.ReadAll(resp.Body)
        if err != nil {
            fmt.Println("http read error", err)
            return
        }
     
        // 关闭响应结果
        defer resp.Body.Close()
     
        fmt.Println(string(result))
    }
    
    
    
    ```
    # 导入requests库
    import requests
     
    # 设置url
    url = 'https://api.sansedou.vip/api/currency/query?key=你的接口密钥,登录控制台后在密钥管理页面申请'
     
    # 发送post请求
    response = requests.post(url, data={'key1': 'value1', 'key2': 'value2'})
     
    # 获取响应内容
    result = response.json()
     
    # 打印结果
    print(result)
    ```
    
    
    // 以下是使用Node.js进行GET和POST请求API接口的示例代码:
    
    const https = require('https');
    const querystring = require('querystring');
    
    // 定义请求选项
    const options = {
      hostname: 'api.sansedou.vip',
      path: '/api/currency/query',
      method: 'GET'
    };
    
    // 发送GET请求
    https.get(options, res => {
      console.log(`statusCode: ${res.statusCode}`);
    
      res.on('data', d => {
        process.stdout.write(d);
      });
    }).on('error', error => {
      console.error(error);
    });
    
    // 发送POST请求
    const postData = querystring.stringify({
      'key1': 'value1',
      'key2': 'value2'
    });
    
    const postOptions = {
      hostname: 'api.sansedou.vip',
      path: '/api/currency/query',
      method: 'POST',
      headers: {
        'Content-Type': 'application/x-www-form-urlencoded',
        'Content-Length': Buffer.byteLength(postData)
      }
    };
    
    const postReq = https.request(postOptions, res => {
      console.log(`statusCode: ${res.statusCode}`);
    
      res.on('data', d => {
        process.stdout.write(d);
      });
    });
    
    postReq.on('error', error => {
      console.error(error);
    });
    
    postReq.write(postData);
    postReq.end();
    /*
    这个示例代码使用Node.js内置的`https`模块进行HTTP请求。
    
    首先定义了一个GET请求的选项,然后使用`https.get()`方法发送了GET请求。在响应流上注册回调函数,以便在收到响应数据时将其输出到控制台。在出现错误时,也注册了错误处理程序。
    
    类似地,我们也定义了一个POST请求选项,并使用`https.request()`方法发送它。需要在请求头中包含适当的`Content-Type`和`Content-Length`以确保服务器可以正确解析请求体。请求体由`write()`方法写入,并在请求结束时通过调用`end()`方法通知请求对象已经完成。
    
    注意,此示例默认使用`querystring`模块将数据作为x-www-form-urlencoded格式进行编码。如果需要使用其他格式(如JSON),则需要相应地更改请求头和请求体的编码方式。
    
    另外,为了确保HTTPS请求的安全性,您也可以添加其他选项,例如验证服务器证书、设置代理等。
    */
    
    
    
    
    
    
    以下是使用C语言进行GET和POST请求API接口的示例代码:
    
    ``` c
    #include 
    #include 
    #include 
    #include  // 需要安装curl库
    
    // API地址
    const char* url = "https://api.sansedou.vip/api/currency/query";
    
    // GET请求
    void getRequest(CURL* curl) {
        CURLcode res;
    
        // 设置URL
        curl_easy_setopt(curl, CURLOPT_URL, url);
    
        // 执行请求
        res = curl_easy_perform(curl);
    
        if(res != CURLE_OK) {
            fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
        }
    }
    
    // POST请求
    void postRequest(CURL* curl) {
        CURLcode res;
    
        // 设置URL
        curl_easy_setopt(curl, CURLOPT_URL, url);
    
        // 设置POST数据
        const char* postData = "key=你的接口密钥,登录控制台后在密钥管理页面申请&key1=value1";
        curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postData);
    
        // 执行请求
        res = curl_easy_perform(curl);
    
        if(res != CURLE_OK) {
            fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
        }
    }
    
    int main() {
        CURL* curl;
        CURLcode res;
    
        // 初始化curl
        curl = curl_easy_init();
    
        if(curl) {
            // 设置SSL验证
            curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L);
    
            // GET请求
            getRequest(curl);
    
            // POST请求
            postRequest(curl);
    
            // 清理curl资源
            curl_easy_cleanup(curl);
        }
    
        return 0;
    }
    ```
    
    这个示例代码使用了libcurl库进行HTTP请求。
    
    首先,需要设置API地址。然后,基于`CURL`结构体创建curl句柄,并使用`curl_easy_setopt()`函数设置选项。这里设置了SSL验证,以确保请求的安全性。
    
    在GET请求中,只需将URL设置为选项,然后调用`curl_easy_perform()`函数执行请求即可。
    
    在POST请求中,还需要将POST数据作为字符串传递给`CURLOPT_POSTFIELDS`选项。
    
    需要注意的是,为了避免内存泄漏,应该在使用完curl句柄之后调用`curl_easy_cleanup()`函数进行清理。
    
    除了上述示例代码外,libcurl库还提供了更多高级选项,例如处理HTTP头、上传文件等。可以参考文档进行更详细的了解。
    
    
    
    
    以下是一个使用C++请求API接口的示例代码:
    
    ```cpp
    #include 
    #include 
    
    int main() {
        CURL *curl;
        CURLcode res;
        std::string url = "https://api.sansedou.vip/api/currency/query?key=你的接口密钥,登录控制台后在密钥管理页面申请";
        std::string response;
    
        curl = curl_easy_init();
        if (curl) {
            curl_easy_setopt(curl, CURLOPT_URL, url.c_str());
            curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1L);
            curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, [](char *ptr, size_t size, size_t nmemb, void *userdata) -> size_t {
                std::string *response = reinterpret_cast(userdata);
                response->append(ptr, size * nmemb);
                return size * nmemb;
            });
            curl_easy_setopt(curl, CURLOPT_WRITEDATA, &response);
    
            res = curl_easy_perform(curl);
            if (res == CURLE_OK) {
                std::cout << "Response: " << response << std::endl;
            } else {
                std::cerr << "Error: " << curl_easy_strerror(res) << std::endl;
            }
            curl_easy_cleanup(curl);
        }
    
        return 0;
    }
    ```
    
    解释:
    
    1. 引入需要的头文件:``用于输出结果,``用于使用libcurl库。
    
    2. 定义需要请求的API接口的URL和存储响应数据的字符串变量。
    
    3. 初始化一个CURL对象。
    
    4. 设置CURL对象的参数:请求的URL(`CURLOPT_URL`)、是否跟随重定向(`CURLOPT_FOLLOWLOCATION`)、响应数据的写入函数(`CURLOPT_WRITEFUNCTION`)和响应数据的写入位置(`CURLOPT_WRITEDATA`)。
    
    5. 发送HTTP请求并获取响应数据,判断返回状态码是否OK。
    
    6. 清理CURL对象。
    
    运行该程序会发送GET请求到指定的API接口URL,并在程序终止前将响应数据输出到终端。注意,在使用该示例代码之前需要安装libcurl库。
    
    
    
    
    以下是一个使用C#请求API接口的示例代码:
    
    ```csharp
    using System;
    using System.Net.Http;
    using System.Threading.Tasks;
    
    class Program {
        static async Task Main(string[] args) {
            HttpClient client = new HttpClient();
            string url = "https://api.sansedou.vip/api/currency/query?key=你的接口密钥,登录控制台后在密钥管理页面申请";
            HttpResponseMessage response = await client.GetAsync(url);
            if (response.IsSuccessStatusCode) {
                string responseBody = await response.Content.ReadAsStringAsync();
                Console.WriteLine("Response: " + responseBody);
            } else {
                Console.WriteLine("Error: " + response.StatusCode);
            }
        }
    }
    ```
    
    解释:
    
    1. 引用需要的命名空间:`System.Net.Http`用于使用HttpClient类,`System.Threading.Tasks`用于异步执行请求操作。
    
    2. 创建一个HttpClient对象。
    
    3. 定义需要请求的API接口的URL。
    
    4. 发送GET请求到指定的API接口URL,并获取响应结果。
    
    5. 判断响应状态是否成功,如果成功则读取响应数据(使用ReadAsStringAsync方法),否则输出错误信息(使用StatusCode属性)。
    
    运行该程序会发送GET请求到指定的API接口URL,并在程序终止前将响应数据输出到终端。注意,在使用该示例代码之前需要安装.NET Framework或.NET Core SDK。
    
    
    
    
    以下是VB请求API接口的示例代码:
    
    ```
    ' 1. 引入Microsoft XML v6.0库
    ' 2. 创建一个XMLHTTP对象
    Dim xhr As XMLHTTP
    Set xhr = New XMLHTTP
    
    ' 3. 设置请求的URL、方法,以及是否异步等
    xhr.Open "GET", "https://api.sansedou.vip/api/currency/query?key=你的接口密钥,登录控制台后在密钥管理页面申请", False
    
    ' 4. 发送请求
    xhr.send
    
    ' 5. 获取响应结果
    Dim responseText As String
    responseText = xhr.responseText
    
    ' 6. 输出响应结果
    Debug.Print responseText
    
    ' 7. 释放资源
    Set xhr = Nothing
    ```
    
    在这个示例中,我们创建了一个XMLHTTP对象,用于请求API接口。我们先调用`open`方法来设置请求的URL、方法,以及是否异步。然后,我们发送请求,并使用`responseText`属性来获取响应结果。最后,我们将响应结果打印到控制台,完成操作后释放资源,以防止内存泄漏。请注意,以上示例代码为同步请求,如果想使用异步请求,需要设置第三个参数为`True`,并在请求结束时处理`OnReadyStateChange`事件。
    
    参数名 填写参数值
    评论0
    未登录

    登录 后发表评论

    仅需三步即可快速接入

    1
    在线调试

    填写业务相关参数免费在线调试

    2
    生成代码

    生成符合你的开发语言代码,复制即可

    3
    业务上线

    调整你后端部分逻辑代码即可上线使用

    数据驱动未来

    立即注册

    返回顶部