C1N短链接 - API接口 - 创建短链接

接口说明

使用C1N短链接服务(c1n.cn)将原始链接快速转为短链接。

接口地址

bash 复制代码
https://c1n.cn/link/short

请求方式

POST

请求头:Headers

参数名 是否必须 说明

|-------|---|-----------------------------------------------|
| token | 是 | 请前往C1N短链接服务(c1n.cn)「控制台」-「个人中心」-「短链配置」获取token |

请求参数:Form 表单

参数名 是否必须 说明

|------------|---|-----------------------------------|
| url | 是 | 原始网址,以http://或https://开头 |
| key | 否 | 自定义短链后缀,不填则随机生成5位 |
| remark | 否 | 短链标题 |
| expiryDate | 否 | 有效期,例如:2023-10-20 00:00:00,默认永久有效 |
| domainName | 否 | 指定自有域名(需要先在控制台绑定域名) |

响应数据:JSON格式

复制代码
{
    code: 0,
    data: "https://c1n.cn/xxxxx",
    msg: "成功"
}
//说明:code为0表示成功,其他情况表示生成失败。

代码示例

php

php 复制代码
<?php
function short_url($long_url)
{
    $headers = [
        'Content-Type: application/x-www-form-urlencoded',
        'token: your_token'  // 替换为您的token
    ];
    $data = [
        'url' => $long_url,
        'key' => '',
        'remark' => '',
        'expiryDate' => '',
        'domainName' => ''
    ];
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'https://c1n.cn/link/short');
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
    curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data));
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    $response = curl_exec($ch);
    curl_close($ch);
    $response_data = json_decode($response, true);
    if ($response_data['code'] == 0) {
        return $response_data['data'];
    }
    echo $response_data['msg'];
}
// 请确保您的PHP环境中已经安装了cURL库
$res = short_url('https://example.com');  // 替换为您要生成短链接的原始网址
echo $res; 
?>

python

python 复制代码
import requests
def short_url(long_url):
    headers = {
        'Content-Type': 'application/x-www-form-urlencoded',
        'token': 'you_token'  # 替换为您的token
    }
    data = {
        'url': long_url,
        'key': '',
        'remark': '',
        'expiryDate': '',
        'domainName': ''
    }
    response = requests.post('https://c1n.cn/link/short', headers=headers, data=data)
    response_data = response.json()
    if response_data.get('code') == 0:
        return response_data.get('data')
    print(response_data.get('msg'))
res = short_url('https://example.com')  # 替换为您要生成短链接的原始网址
print(res)

java

java 复制代码
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;

public class ShortUrlDemo {

    /**
     * 使用前需要先引入fastjson依赖
     * <dependency>
     *   <groupId>com.alibaba</groupId>
     *   <artifactId>fastjson</artifactId>
     *   <version>1.2.47</version>
     * </dependency>
    */
    public static void main(String[] args) {
        String res = shortUrl("https://example.com"); //替换为您要生成短链接的原始网址
        System.out.println(res);
    }

    public static String shortUrl(String longUrl) {
        try {
            URL url = new URL("https://c1n.cn/link/short");
            HttpURLConnection connection = (HttpURLConnection) url.openConnection();
            connection.setRequestMethod("POST");
            connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
            connection.setRequestProperty("token", "you_token"); // 替换为您的token
            connection.setDoOutput(true);
            String requestBody = "url=" + URLEncoder.encode(longUrl, "UTF-8") + "&key=&remark=&expiryDate=&domainName=";
            connection.getOutputStream().write(requestBody.getBytes(StandardCharsets.UTF_8));
            BufferedReader reader = new BufferedReader(new InputStreamReader(connection.getInputStream()));
            StringBuilder response = new StringBuilder();
            String line;
            while ((line = reader.readLine()) != null) {
                response.append(line);
            }
            reader.close();
            connection.disconnect();
            JSONObject obj = JSON.parseObject(response.toString());
            if (obj.getInteger("code") == 0) {
                return obj.getString("data");
            }
            System.out.println(obj);
            return "";
        } catch (IOException e) {
            e.printStackTrace();
            return "";
        }
    }
}

JavaScript

javascript 复制代码
function shortUrl(longUrl) {
    var xhr = new XMLHttpRequest();
    var url = 'https://c1n.cn/link/short';
    var headers = {
        'Content-Type': 'application/x-www-form-urlencoded',
        'token': 'your_token' // 替换为您的token
    };
    var data = 'url=' + encodeURIComponent(longUrl) + '&key=&remark=&expiryDate=&domainName=';
    xhr.open('POST', url, true);
    for (var key in headers) {
        xhr.setRequestHeader(key, headers[key]);
    }
    xhr.onreadystatechange = function() {
        if (xhr.readyState === XMLHttpRequest.DONE) {
            if (xhr.status === 200) {
                var responseJson = JSON.parse(xhr.responseText);
                if (responseJson.code === 0) {
                    console.log(responseJson.data);
                } else {
                    console.log(responseJson.msg);
                }
            } else {
                console.log('Error:', xhr.status);
            }
        }
    };
    xhr.send(data);
}
shortUrl('https://example.com'); // 替换为您要生成短链接的原始网址
相关推荐
DianSan_ERP2 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
呉師傅2 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
一个人旅程~2 天前
如何用命令行把win10/win11设置为长期暂停更新?
linux·windows·经验分享·电脑
2501_946205522 天前
晶圆机器人双臂怎么选型?适配2-12寸晶圆的末端效应器有哪些?
服务器·网络·机器人
linux kernel2 天前
第七部分:高级IO
服务器·网络
数字护盾(和中)2 天前
BAS+ATT&CK:企业主动防御的黄金组合
服务器·网络·数据库
~远在太平洋~2 天前
Debian系统如何删除多余的kernel
linux·网络·debian
Factory_Audit2 天前
亚马逊社会责任验厂审核标准及注意事项
大数据·经验分享
江南小书生2 天前
制造业系统赋能成熟度自测表(实操版)
经验分享·非标制造
unfeeling_2 天前
Keepalived实验
linux·服务器·网络